เดโมนี้เหมาะกับคอมพิวเตอร์ บนมือถือใช้ได้แต่พื้นที่แคบ · This demo is best on a computer; it works on a phone but the workbench is cramped.

skillsiot

รายงานค่าออกมาให้เครื่องอื่นอ่านได้

ก่อนจะมีคลาวด์หรือเครือข่ายใด ๆ งานแรกของเกตเวย์คือทำให้ข้อมูลออกจากบอร์ดในรูปแบบที่เครื่องอื่นอ่านต่อได้

ในบทนี้คุณจะ

  • พิมพ์ค่าออก Serial ในรูปแบบที่คงที่
  • อธิบายว่าทำไมรูปแบบที่แน่นอนสำคัญกว่าข้อความสวยงาม
  • ใส่หน่วยและเวลาไปกับค่าทุกครั้ง

1. ข้อความสำหรับคน กับข้อความสำหรับเครื่อง

"ตอนนี้อุณหภูมิ 25 องศาแล้วนะ" คนอ่านรู้เรื่อง แต่เครื่องแยกตัวเลขออกมายาก เขียนเป็น reading=temp,25.4,C แทน สั้นกว่า และโปรแกรมฝั่งรับตัดเอาค่าไปใช้ได้ทันที

2. รูปแบบเดิมทุกบรรทัด

ให้ทุกบรรทัดขึ้นต้นด้วย reading= เหมือนกันหมด แล้วตามด้วยชื่อค่า ตัวเลข และหน่วย คั่นด้วยเครื่องหมายจุลภาค ฝั่งรับจะมองหาบรรทัดที่ขึ้นต้นแบบนี้และข้ามข้อความแก้บั๊กอื่น ๆ ไปได้ นี่คือเหตุผลที่ต้องมีคำนำหน้า

3. ค่าที่ไม่มีหน่วยคือค่าที่ยังไม่ครบ

25.4 เฉย ๆ ไม่บอกว่าเซลเซียสหรือฟาเรนไฮต์ และถ้าไม่มีเวลากำกับก็ไม่รู้ว่าเป็นค่าเมื่อไร ใส่หน่วยไว้ในบรรทัดและใช้ millis เป็นเวลาอ้างอิง ระบบที่ใหญ่ขึ้นทั้งหมดสร้างบนนิสัยนี้

4. สามเครื่อง สามหน้าที่

UNO วัดค่าและพิมพ์บรรทัดออกมา โดยไม่รู้ว่าใครเป็นคนอ่าน เกตเวย์อ่านบรรทัดเหล่านั้นแล้วตัดสินใจว่าจะส่งต่ออะไร มักเติมตัวระบุตัวตนและเวลากำกับเข้าไปด้วย ส่วนเครือข่ายทำหน้าที่ขนสิ่งที่เกตเวย์ส่ง และอาจทำให้ช้า ซ้ำ หรือหายได้ ในคอร์สนี้บรรทัดหยุดอยู่ที่ Serial monitor ยังไม่มีเกตเวย์และยังไม่มีเครือข่าย นั่นคือเหตุผลที่บรรทัดต้องอ่านด้วยเครื่องได้ตั้งแต่ตอนนี้ เพราะเครื่องถัดไปคือเครื่องที่ถามคุณไม่ได้ว่าหมายถึงอะไร

ตรวจความเข้าใจ

ทำไมทุกบรรทัดถึงควรขึ้นต้นด้วยคำนำหน้าเดียวกันอย่าง reading=

ลงมือทำ

ลงมือทำ

พิมพ์ค่าที่อ่านได้ออกมาในรูปแบบคงที่ ให้ทุกบรรทัดขึ้นต้นด้วย reading= พร้อมชื่อค่าและหน่วย

เริ่มแล็บใน StudioStudio จะเปิดวงจรเริ่มต้นของบทนี้ พร้อมคำใบ้ เฉลย และการตรวจคำตอบจากค่าที่วัดได้