สวัสดีครับก่อนที่เราจะมาทำความรู้จักกับ Project IoT เริ่มด้วยผมเป็นนักศึกษาฝึกงานมาจากมหาวิทยาลัยเทคโนโลยีราชมงคลตะวันออก วิทยาเขตจักรพงษภูวนารถ คณะบริหารธุรกิจเเละเทคโนโลยีสารสนเทศฯ ซึ่งมาฝึกงานด้าน Hardware เนื่องจากบริษัทที่มาฝึกงานเป็นบริษัทเกี่ยวกับ เทคโนโลยี ดังนั้นพี่ที่ดูแลในส่วนของ Engineer จึงได้มอบหมายโปรเจ็คโดยมอบ Sensor ชื่อว่า Soil moisture เซนเซอร์สำหรับวัดปริมาณน้ำในดิน ให้มาประยุกต์ใช้กับ NETPIE ที่เป็น Platform as a Service มีหน้าที่ บริการการเชื่อมต่อข้อมูลและแลกเปลี่ยนข้อมูลระหว่างอุปกรณ์ต่างๆ
เครื่องรดน้ำต้นไม้อัติโนมัติ
การรดน้ำต้นไม้อาจเป็นปัญหาใหญ่สำหรับคนปลูกต้นไม้ แต่ไม่ค่อยมีเวลาว่างดังนั้นเครื่องรดน้ำต้นไม้อัตโนมัติจึงจำเป็นกับเหล่าบรรดาผู้รักต้นไม้ เราขอแนะนำในส่วนของเครื่องรดน้ำต้นไม้อัจฉริยะสามารถสั่งรดน้ำต้นไม้ด้วยระบบ IoT ที่ทันสมัย รวดเร็ว ทันใจ สะดวกสบาย หมดห่วงเรื่องระยะทาง ลดเวลา ในการรดน้ำต้นไม้โดยสั่งการผ่าน browser หรือจะ แปลง จาก HTML5 ไป เป็นแอพ Android เพื่อเพิ่มความเป็นส่วนตัว เเละสะดวกมากขึ้น
1. Board NodeMCU v2
2. Soil moisture sensor
3. Water flow sensor
4. Relay
5. Solenoid Valve
- Node MCU : บอร์ดตัวนี้เป็นบอร์ดที่รวมเอา ESP8266 (ESP-12) + USB to Serial +NodeMCU firmware เข้าไว้ด้วยกัน ทำให้การใช้งานง่ายมากขึ้น ไม่ต้องมีอุปกรณ์ต่อพ่วงเยอะ แถมมี GPIO เพิ่มเป็น 10 พอร์ท เพียงพอต่อการใช้งาน สำหรับ NodeMCU devkit ที่ได้มาเป็นบอร์ดเปล่าๆ ใช้ AT Command ในการสั่งงาน
- Soil moisture sensor : เซนเซอร์นี้คือเซนเซอร์สำหรับวัดปริมาณน้ำในดินแบบง่าย ซึ่งสามารถนำมาวัดความชื้นที่อยู่ภายในดินได้ โดยให้ค่าoutput เป็นแบบดิจิตอล สามารถปรับค่าได้ด้วยตัวต้านทานปรับค่าได้ที่อยู่บนบอร์ดสามารถนำเซนเซอร์ตัวนี้มาทำเป็นระบบรดน้ำต้นไม้อัตโนมัติได้อย่างง่ายดายหรือหากต้องการค่าที่แม่นยำมากขึ้นสามารถอ่านค่าเป็นแบบ analog
- Relay : อุปกรณ์อิเล็กทรอนิกส์ที่ทำหน้าที่เป็นสวิตซ์ตัด-ต่อวงจรโดยใช้แม่เหล็กไฟฟ้า[1] และการที่จะให้มันทำงานก็ต้องจ่ายไฟให้มันตามที่กำหนดเพราะเมื่อจ่ายไฟให้กับตัวรีเลย์ มันจะทำให้หน้าสัมผัสติดกันกลายเป็นวงจรปิด และตรงข้ามทันทีที่ไม่ได้จ่ายไฟให้มัน มันก็จะกลายเป็นวงจรเปิด ไฟที่เราใช้ป้อนให้กับตัวรีเลย์ก็จะเป็นไฟที่มาจาก เพาเวอร์ฯ ของเครื่องเรา ดังนั้นทันทีที่เปิดเครื่อง ก็จะทำให้รีเลย์ทำงาน
- Water flow sensor ออกแบบมาสำหรับตรวจจับอัตราการไหลของน้ำโดยเฉพาะ ในตัวของมันประกอบด้วย โรเตอร์หรือแกนหมุนสำหรับรับน้ำที่มีแม่เหล็กชิ้นเล็กๆ ติดอยู่ และตัวตรวจจับฮอลล์เอฟเฟ็กต์ ซึ่งบรรจุอยู่ภายในตัวถังพลาสติกซึ่งผลิตจากไนล่อนและไฟเบอร์ที่มีข้อต่อสำหรับทางน้ำเข้าและทางน้ำออก เมื่อน้ำไหลเข้ามาในตัวตรวจจับ แกนหมุนที่อยู่ภายในจะหมุน ทำให้แม่เหล็กที่ติดอยู่กับใบพัดของแกนหมุนนั้นเกิดการเคลื่อนที่ผ่าตัวตรวจจับฮอลล์เอฟเฟ็กต์ ทำให้เกิดสัญญาณพัลส์ซึ่งจะมีอัตราตามความเร็วของกระแสน้ำที่ไหลเข้ามาในตัวตรวจจับ
- Solenoid Valve อุปกรณ์ทางอิเล็คโตร แมคเนติค ที่ใช้ควบคุมปริมาตรของของไหลที่ไหลผ่านท่อ โดยการเปิดหรือปิดที่รู orifices ของตัววาล์วโซลีนอยด์วาล์วเป็นการรวมกันของ 2 รูปแบบการทำงาน คือ SOLENOID จะเป็นตัวทำหน้าที่สร้างสนามแม่เหล็กและเหนี่ยวนำให้ plunger เคลื่อนที่ขึ้นลง VALVE ตัววาล์วจะมีรู orifice ที่มี disc คอยปิดและเปิดให้ของไหลไหลผ่านวาล์ว
ส่วนของการต่อวงจร
Soil Moisture Sensor
Vcc=3V
A0=A0
GND=GND
Water flow sensor
Vcc=5V
D0=D2 //ขึ้นอยู่กับ code ที่เรียกใช้
GND=GND
NodeMCU pin definition
ขั้นตอนการแสดงผลและการทำงาน
เริ่มจาก Soil Moisture Sensor ทำการวัดค่าความชื้นในดินแล้วทำการส่งค่าความชื้นไปยัง Node MCU เพื่อให้ Node MCU ทำการส่งค่าขึ้นไปยัง Cloud และทำการแสดงผลบนน่าเว็บบราวเซอร์ นอกจากนั้นยังสามารถสั่งเปิด/ปิด น้ำจากเว็บบราวเซอร์ได้
ส่วนของ Code Arduino
ว่าจะลองหัดทำอยู่พอดี :-)
ตอบลบสู้ๆครับ
ลบถ้าเปลี่ยนจากตัววัดค่าความชื้นในดินแล้วใช้วัดอุณหภูมิแทน แล้วเปิดปิดโซลินอยผ่านแอป Blynk นี่ยากไหมครับ
ลบError ครับผม แก้ยังไงหรอครับ
ตอบลบต้องดูที่คอมเม้น โค้ดError ครับ
ลบขอโคดหน่อยได้ไหมครับ มัน error
ตอบลบError อ่ะครับ
ตอบลบArduino: 1.8.5 (Windows 10), Board: "Arduino/Genuino Uno"
C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\user\Documents\Arduino\libraries -fqbn=arduino:avr:uno -ide-version=10805 -build-path C:\Users\user\AppData\Local\Temp\arduino_build_631533 -warnings=none -build-cache C:\Users\user\AppData\Local\Temp\arduino_cache_50307 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.arduinoOTA.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -verbose E:\Arduino TE-2PB\motor\motor.ino
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\user\Documents\Arduino\libraries -fqbn=arduino:avr:uno -ide-version=10805 -build-path C:\Users\user\AppData\Local\Temp\arduino_build_631533 -warnings=none -build-cache C:\Users\user\AppData\Local\Temp\arduino_cache_50307 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.arduinoOTA.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -verbose E:\Arduino TE-2PB\motor\motor.ino
Using board 'uno' from platform in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr
Using core 'arduino' from platform in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr
Detecting libraries used...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\user\AppData\Local\Temp\arduino_build_631533\sketch\motor.ino.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\user\AppData\Local\Temp\arduino_build_631533\sketch\motor.ino.cpp" -o "C:\Users\user\AppData\Local\Temp\arduino_build_631533\preproc\ctags_target_for_gcc_minus_e.cpp"
E:\Arduino TE-2PB\motor\motor.ino:1:24: fatal error: AuthClient.h: No such file or directory
#include
^
compilation terminated.
exit status 1
Error compiling for board Arduino/Genuino Uno.
เลือกบอร์ดผิดครับ
ลบข้างบนใช้บอร์ด "ESP8266" ครับ ไม่ใช่ "Arduino/Genuino Uno" เปลี่ยนมใน Tools-->Board เป็น "Generic ESP8266 Module" ครับ
มีขายใหมครับผม อยากซื้อไปใช้ในไร่ครับ 0851774741
ตอบลบงบเท่าไหร่คับ
ตอบลบต้องใช้แอพอะไรคะ ในการควบคุมการเปิดปิดวาล์ว
ตอบลบความคิดเห็นนี้ถูกผู้เขียนลบ
ตอบลบใช้arduino UNO ด้วยหรอคับ
ตอบลบพี่ค่ะโค้ด HTML เอาไปใช้ยังไงค่ะ
ตอบลบมีขายไหมคะ 0954938503
ตอบลบมีขายมัยติดต่อยังไงได้บ้าง 0855446947
ตอบลบผมสามารถแปลงให้ทำงานแบบ เอ่อ มีต้นไม้หลายต้นเลือก รดทีละต้นต้องเพิ่มอะไรบ้างครับ
ตอบลบสามารถสั่งการให้มือถือได้มั้ยคะ
ตอบลบความคิดเห็นนี้ถูกผู้เขียนลบ
ตอบลบผมอยากทำหาซื้ออุปกรณ์ที่ใหนครับ
ตอบลบHow to Make a Baccarat Bet - Worrione
ตอบลบBaccarat allows you to งานออนไลน์ bet on the number worrione of cards and the number of payouts to get started 카지노 in a game. With baccarat, you will also get up to a
Roulette at the Live Casino Site - Lucky Club
ตอบลบRoulette is the fastest-growing online roulette game. Nowadays you can play luckyclub.live roulette by yourself. There are over 300 casino games, including roulette,