6LowPan over BLE ตอนที่ 1 ( Bluetooth Low Energy ) หนึ่งในเทคโนโลยี IoT เชื่อมต่อผ่าน IP ที่ไม่ได้มีแค่ WiFI และสายแลน
ในปัจจุบันเทคโนโลยี Internet of things สิ่งหนึ่งที่มักจะเป็นคำถามคือ การสื่อสารทางไหนประหยัดพลังงานที่สุด และ ง่ายต่อการนำมาใช้งานจริง
Bluetooth Low Energy ( BLE ) การเชื่อมต่อสื่อสารแบบไร้สายถูกออกแบบโดย Bluetooth Special Interest Group ( BT-SIG ).
เทคโนโลยีการสื่อสารไร้สาย BLE ถูกนำไปใช้งานในอุปกรณ์หลากหลายตั้งแต่ สมาร์ทโฟน คอมพิวเตอร์โน็ตบุ้ค หูฟัง เป็นต้น เทคโนโลยี BLE ได้ถูกพัฒนามาอย่างต่อเนื่อง
ในปัจจุบันเริ่มมีการนำไปใช้งานทางด้าน Internet of thing ( IoT ) มากขึ้นข้อดีคือ ประหยัดพลังงาน และสามารถเชื่อมต่อกับอุปกรณ์อื่นเช่น สมาร์ทโฟนได้ทันที เทคนิคที่จะทำให้ BLE สามารถสื่อสารกับอุปกรณ์อื่นผ่าน Internet ได้นั้นแม้จะอุปกรณ์นั้นจะไม่ได้ใช้ BLE ก็ตามจะใช้วิธีทำผ่าน IPV6 และใช้เทคนิคในการติดต่อสื่อสารที่เรียกว่า 6LowPan ที่ออกแบบมาสำหรับงานทางด้าน Low power เข้ามาช่วย
ตัวอย่างที่เราจะยกมาเป็นเทคโนโลยีของบริษัท Nordic Semi ให้ดูกันทั้งภาคซอฟต์แวร์และฮาร์ดแวร์ โดยฮาร์ดแวร์จะอ้างอิงชิบของ Nordic ในตระกูล nRF51x22 ซึ่งเป็น ARM CortexM0 รวมภาคการสื่อสารไร้สายแบบ Multiprotocol ไว้ บอร์ดที่เราใช้ทดลองชื่อว่า nRF51-DK เป็น reference platform ของ Nordic ราคาอยู่ที่ ~3000 THB ( แต่ตัวชิบพร้อมโมดูลจาก 3rd party มีราคาค่อนข้างถูก การนำไปใช้งานจริงราคาจึงไม่ใช่ปัญหาใหญ่) โดยชุดพัฒนาของ nRF51-DK นี้จะได้ทั้ง Segger JTAG อยู่บนบอร์ดพร้อมทั้งซัพพอร์ตการใช้งานแบบแพลตฟอร์ม mbed
การพัฒนาซอฟต์แวร์ 6LowPan บน BLE ของ Nordic จำเป็นจะต้องเข้าใจที่มาที่ไปของซอฟต์แวร์สแต็ก 6LowPan Over BLE ที่ใช้งานดังต่อไปนี้
จากภาพประกอบเมื่อเทียบกับ OSI Model จะเห็นจะว่าลำดับชั้นบนสุดคือ Application เราสามารถใช้โพรโตคอลมาตรฐานทางด้าน IoT มาประยุกต์เข้ากับระบบได้เช่น CoAP, MQTT ทำให้การออกแบบการเชื่อมต่อสื่อสารระหว่างอุปกรณ์ทำได้ง่ายขึ้น โดยทั้ง CoAP และ MQTT ถูกแบบมาสำหรับงานทางด้าน M2M ( machine to machine ) อยู่แล้วทำให้การจัดการเรื่องแบนวิดท์และการประยุกต์ใช้งานจริงได้อย่างมีประสิทธิภาพ
ลำดับชั้นรองลงมา ( Transport Layer ) การติดต่อสื่อสารผ่าน 6LowPan Over BLE จะทำผ่าน UDP หรือ TCP แล้วแต่การเรียกใช้ของ Application Layer ในที่นี้ CoAP จะใช้ UDP และ MQTT จะใช้ TCP เป็นต้น
ลำดับชั้นที่เหลือจริงๆ แล้วรวมอยู่ในเรื่องของ 6LowPan ทั้งหมดเป็นการคอมเพลสทราฟฟิก การค้นหาเส้นทาง การค้นหาเพื่อนร่วมเครือข่าย โดยทั้งหมดจะต้องผ่าน Adaptation layer ( BLE 6LowPan ) ซึ่งเป็นหัวใจสำคัญเพื่อสุดท้ายแปลงออกทาง Physical ที่เป็น BLE ในที่นี้เนื่องจาก nRF51422 สามารถเชื่อมต่อได้หลากหลายโพรโตคอลทำให้ต้องถูกกำหนดโดยซอฟต์แวร์ที่เรียกว่า SoftDevice
ลำดับชั้นของ Physical and Link Layer จะมีผลถึงเรื่อง 6LoWPAN Border Router และ 6LowPan Border Node ที่เราจะพูดถึงในบทสถาปัตยกรรมการเชื่อมต่ออีกด้วย
จากบทนี้จะสรุปได้ว่าเราสามารถทำให้อุปกรณ์ที่เชื่อมต่อผ่าน Bluetooth ในอนาคตก็คุยผ่านระบบ IP ได้เหมือนกัน ทำให้ซอฟต์แวร์สามารถทำงานกันได้ง่ายขึ้น รวมทั้ง BLE ก็ประหยัดพลังงานมากกว่า WiFI ทำให้เหมาะกับอุปกรณ์ที่ใช้พลังงานผ่านแบตเตอรี่มากกว่าอีกด้วย
ตอนต่อไปสถาปัตยกรรมการเชื่อมต่อและ 6LowPan Over BLE and Raspberry PI
Originally published at www.deaware.com.