นี่เป็นเรื่องที่ฉันคิดถึงมาระยะหนึ่งโดยเฉพาะอย่างยิ่งเพราะแนวคิด "IoT" ลอยไปรอบ ๆ เมื่อไม่นานมานี้
ฉันจะเริ่มต้นกับสิ่งที่ฉันหมายถึงเมื่อผมบอกว่า"IOT" ฉันรู้ว่าคำว่า IoT อาจหมายถึงสิ่งที่แตกต่างกันและบางครั้งก็ใช้ผิดวัตถุประสงค์ มันอาจเป็นคำที่ไม่ชัดเจนและอาจนำไปสู่การอภิปรายครั้งใหญ่เกี่ยวกับความหมายที่แท้จริงฉันเองไม่ทราบคำจำกัดความที่ถูกต้องและเป็นที่ยอมรับอย่างกว้างขวาง ดังนั้นสำหรับฉัน IOT เป็นแนวคิดแนวคิดที่กำหนดความสามารถในการเชื่อมต่อกับอุปกรณ์ฝังตัวจากระยะไกลผ่านทางอินเทอร์เน็ตทั้งจากอุปกรณ์ฝังตัวอื่นหรือจากโทรศัพท์มือถือได้ ง่ายเหมือนที่
ในบริบทนี้วัตถุประสงค์ของการเชื่อมต่อไม่สำคัญว่าถ้าคุณสามารถเชื่อมต่ออุปกรณ์หนึ่งเครื่องในสำนักงานของคุณกับอุปกรณ์อื่นที่บ้านหรือถ้าคุณสามารถเชื่อมต่ออุปกรณ์หนึ่งที่บ้านจากโทรศัพท์มือถือของคุณทั้งหมดนี้ผ่านอินเทอร์เน็ต ถ้าอย่างนั้นเรากำลังพูดถึงอุปกรณ์ IoT (อุปกรณ์ฝังตัวไม่ใช่โทรศัพท์)
ดังนั้นเมื่อเห็นด้วยกับสิ่งที่ฉันหมายถึงโดย IoT ตอนนี้ฉันจะอธิบายสิ่งที่ฉันพยายามที่จะบรรลุ
สิ่งที่ฉันพยายามที่จะบรรลุคือสิ่งที่ฉันอธิบายในคำจำกัดความของ IoT
ฉันต้องการมีอุปกรณ์ฝังตัวหนึ่งหรือหลายตัวที่บ้านที่เชื่อมต่อกับเราเตอร์อินเทอร์เน็ตของฉันไม่ว่าจะโดยอีเธอร์เน็ตหรือ wifi และสามารถเชื่อมต่อกับอุปกรณ์เหล่านั้นจากระยะไกลได้ด้วยอุปกรณ์ฝังตัวอื่นในสถานที่ห่างไกล และอาจจะสามารถเชื่อมต่อกับพวกเขาด้วยแอพตรวจสอบบนโทรศัพท์ของฉัน
ตัวอย่างเช่นฉันอาจมีอุปกรณ์สมองกลฝังตัวที่เรียบง่ายซึ่งทำหน้าที่เป็นสวิตช์เปิด / ปิดตะขอเกี่ยวกับที่เปิดประตูโรงรถของฉันและอุปกรณ์ฝังตัวอื่นที่ทำหน้าที่เป็นปุ่มสีแดงขนาดใหญ่บนโต๊ะทำงานของฉันเพื่อให้ฉันสามารถกดปุ่มสีแดงบนโต๊ะทำงาน และประตูโรงรถเปิดขึ้น
อีกตัวอย่างหนึ่งคือการมีอุปกรณ์ฝังตัวที่มีความสามารถของ ADC ที่สามารถตรวจสอบอุณหภูมิของบ้านของฉันและส่งการแจ้งเตือนเมื่อถึงเกณฑ์ สามารถรับการแจ้งเตือนได้โดยแอป Android ที่เรียบง่ายหรืออุปกรณ์ฝังตัวอื่นที่มีหน้าจอเล็ก ๆ นั่งอยู่บนโต๊ะทำงานของฉัน
ตัวอย่างเหล่านี้อาจไร้สาระ แต่เป็นเพียงการอธิบายสถานการณ์ที่เป็นไปได้และใช้กรณีสำหรับสิ่งที่ฉันพยายามทำ ในตอนท้ายแนวคิดก็เหมือนกันเชื่อมอุปกรณ์หนึ่งเข้ากับอุปกรณ์อื่นผ่านอินเทอร์เน็ต
สิ่งที่ชัดเจนอีกประการหนึ่งคือการแลกเปลี่ยนข้อมูลระหว่างอุปกรณ์เหล่านี้จะมีน้ำหนักเบามากเพียงไม่กี่ไบต์ทุกครั้งไม่ใช่ว่าต้องใช้หลายร้อยกิโลไบต์เพื่อแลกเปลี่ยนระหว่างอุปกรณ์
นอกจากนี้ชนิดของ "อุปกรณ์ฝังตัว" ที่ฉันอ้างถึงนั้นเป็นอุปกรณ์ที่เรียบง่าย แต่มีความสามารถซึ่งใช้ไมโครคอนโทรลเลอร์คอร์เท็กซ์ -m4 100MHz หรือ 200MHz และนั่นเป็นสิ่งสำคัญที่ต้องชี้แจงเพราะจะไม่มีลินุกซ์หรือไลบรารีที่ซับซ้อนใด ๆ ที่ทำงานบนอุปกรณ์เหล่านั้น ในท้ายที่สุดเป็นของเสียดังกล่าวของทรัพยากรและสมบูรณ์จำเป็นต้องมีหน่วยประมวลผลที่มีประสิทธิภาพใช้ Linux เพียงเพื่อเปิดและปิดหลอดไฟ ไม่ว่าในกรณีใดฉันวางแผนที่จะใช้ BeagleBoard, Raspberry Pi หรือบอร์ดอื่น ๆ เช่นนั้นเป็นอุปกรณ์ฝังตัวของฉัน เพียงแค่ไมโครคอนโทรลเลอร์ไม่จำเป็นต้องมีความซับซ้อนมากไปกว่านี้
ฉันไม่รู้อะไรมากเกี่ยวกับแพลตฟอร์ม IoT และโซลูชั่นที่ซับซ้อนประเภทนั้น เมื่อฉันเริ่มต้นการเดินทางครั้งนี้เพื่อค้นหาวิธีการเชื่อมต่ออุปกรณ์ฝังตัวหนึ่งเข้ากับอุปกรณ์อื่นผ่านทางอินเทอร์เน็ตฉันพบเว็บไซต์สองแห่งที่มีบริการ IoT
ฉันรู้ว่ามีบริการคลาวด์ IoT บางอย่างเช่น:
เพียงเพื่อชื่อไม่กี่ ปัญหาหลักของเรื่องเหล่านี้คือเรื่องค่าใช้จ่ายและความซับซ้อน คุณต้องจ่ายเงินเพื่อรับบริการเหล่านั้นและคุณต้องเรียนรู้วิธีการใช้บริการทั้งหมดที่พวกเขามีในกรณีที่คุณต้องการพวกเขาทั้งหมดและ APIs ของพวกเขาและอาจเป็นเรื่องอื่น ๆ ที่ไม่จำเป็นสำหรับฉัน สามารถเพียงแค่แลกเปลี่ยนไบต์ระหว่างอุปกรณ์ ฉันแค่ต้องการสิ่งที่ง่ายกว่านั้นสิ่งที่ฉันสามารถทำได้เอง
คุณอาจพูดว่าการใช้ "คลาวด์" ของตัวเองถ้านั่นคือสิ่งที่ฉันต้องทำไม่ใช่เรื่องง่ายและบางครั้งดีกว่าที่จะใช้บริการเหล่านั้นเพื่อความเรียบง่าย แต่มีสองเหตุผลหลักที่ฉันต้องการทราบวิธีการ ใช้บริการ IoT ของฉันเอง
เหตุผลหลักคือฉันต้องการทำด้วยตัวเอง ฉันไม่ต้องการพึ่งพาบุคคลที่สามเพื่อเชื่อมต่ออุปกรณ์ของฉันกับแต่ละอื่น ๆ และเนื่องจากฉันจะพัฒนารหัสและฮาร์ดแวร์สำหรับอุปกรณ์ของฉันแล้วมันรู้สึกดีกว่าที่จะสร้างวิธีการของตัวเองเพื่อเชื่อมต่อพวกเขาเป็นอุปกรณ์ IoT
เหตุผลที่สองคือการเรียนรู้วิธีการทำ โดยการรู้ทุกสิ่งที่จำเป็นที่ฉันต้องการเพื่อให้บรรลุนี้ฉันจะมีความเข้าใจที่ดีขึ้นเกี่ยวกับโลกของ IoT
นอกจากนี้ฉันต้องการพูดถึงว่าฉันมีความเชี่ยวชาญใน C และฉันใช้ Linux เป็นระบบปฏิบัติการประจำวันของฉันที่ทำงานเช่นเดียวกับที่บ้านของฉันดังนั้นโปรดหลีกเลี่ยงสิ่ง windows เพราะมันไร้ประโยชน์สำหรับฉัน ฉันไม่กลัวสิ่งใดที่ฉันต้องนำไปใช้ใน C สำหรับอุปกรณ์ฝังตัวของฉันหรือบน Linux เพื่อใช้สิ่งที่จำเป็นเพื่อให้บรรลุเป้าหมายของฉัน
ดังนั้นคำถามของฉันคือสิ่งที่จำเป็นในการดำเนินการและสถานที่ที่สามารถเชื่อมต่ออุปกรณ์ฝังตัวสองตัวหรือมากกว่าเข้าด้วยกันโดยมีวัตถุประสงค์เพื่อแลกเปลี่ยนข้อมูลระหว่างกัน
คำถามนี้ฉันสามารถใช้อะไรเพื่อสร้าง IoT บนเซิร์ฟเวอร์ของเราเอง มีบางอย่างที่คล้ายกัน แต่ถูกปิดและไม่มีคำตอบใด ๆ รวมถึงโครงสร้างพื้นฐานคลาวด์ที่มีอยู่แล้วที่จะใช้ ดังนั้นจึงไม่ช่วยฉัน
โพสต์อื่น ๆ นี้มีบริการ IoT ใดบ้างสำหรับการจัดเก็บ / ส่ง / เผยแพร่ข้อมูลทั่วไปในคลาวด์ มีคำถามที่คล้ายกัน แต่ OP กำลังขออย่างชัดเจนสำหรับบริการ IoT และฉันพยายามหลีกเลี่ยง