สวัสดีอีกครั้งทุกคน หายไปหลายวันเพราะออฟฟิศซินโดรมปวดคอปวดหัวอย่างมาก ตาลายมึนหัวตามมาอี๊ก...เลยหนีไปเลี้ยงสัตว์ปลูกต้นไม้กินยานอน แต่ก็กลับมาแล้วอะนะ
จากสองตอนที่แล้วเราใช้เซ็นเซอร์แสงบนบอร์ด KidBright เปิดปิดไฟได้แล้วครั้งนี้ถ้าจะไม่พูดถึงเซ็นเซอร์ออนบอร์ดอีกตัวนั่นคือเซ็นเซอร์วัดอุณหภูมินี่ก็ยังไง ๆ อยู่เนาะ มันจะไม่ครบถ้วนน่ะสิ
เซ็นเซอร์วัดอุณหภูมิตัวนี้จะอยู่แถวๆ ด้านบนเยื้องไปทางซ้ายของบอร์ดมีสัญญลักษณ์รูปปรอทวัดอุณหภูมิกะลูกศรชี้ไปใปที่ชิปวัดอุณหภูมิตัวสี่เหลี่ยมเล็ก ๆ การใช้งานก็ง่ายแสนง่าย แค่ลากบล็อกอ่านค่าอุณหภูมิมาติดกับจอแสดงผลเท่านี้ก็เรียบร้อยใช้รูปแบบคำสั่งเหมือนเซ็นเซอร์แสงเลย ดูตามภาพด้านล่างจ้ะ
ค่าที่อ่านได้เป็นอุณหภูมิในหน่วยองศาเซลเซียสนะ ทีนี้เรามาลองปรับให้เป็นองศาฟาเรนไฮต์ดู ใครจำสูตรแปลง องศาเซลเซียสเป็นองศาฟาเรนไฮต์ได้บ้าง จำไม่ได้ไม่เป็นไรดูสูตรด้านล่างนะ
C/5 = (F-32)/9
F = 9C/5 + 32
F = 4.5C+32
เพื่อแปลงค่าจากที่บอร์ดอ่านได้ในหน่วยองศาเซลเซียสเราต้องพึ่งบล็อกการคำนวณที่อยู่ในแถบเมนู Math ซะแล้ว ใช้แค่บล็อกคำสั่งแค่ไม่กี่ตัว อันที่วงไว้ในรูปใช้หมดเลย
ในการเขียนโปรแกรมให้เครื่องคำนวณก่อนอื่นต้องเก็บค่าจากเซ็นเซอร์ไว้ในตัวแปรตัวแปรนึง ในที่นี้ให้เป็น TempC (อุณหภูมิในหน่วยองศาเซลเซียส) แล้วเดี๋ยวจะเขียนบล็อกคำสั่งที่เป็นสมการเพื่อหาค่า TempF (อุณหภูมิในหน่วยองศาฟาเรนไฮต์) ดังนั้นต้องสร้างตัวแปรก่อน ให้ไปที่แถบเมนู Variables แล้วกด Create variable...ดังภาพด้านล่าง
เราจะสร้างตัวแปรมา 2 ตัว คือTempC (อุณหภูมิในหน่วยองศาเซลเซียส) และ TempF (อุณหภูมิในหน่วยองศาฟาเรนไฮต์) ตามวิดีโอนะ
คราวนี้มาลองสร้างโปรแกรมอ่านค่าจากเซ็นเซอร์แล้วคำนวณแสดงผลบนจอแอลอีดีกัน ลองดูตามภาพและวีดิโอด้าล่าง และเมื่อแฟลชโปรแกรมลงบอร์ด ค่าที่แสดงออกมาจะเป็นองศาฟาเรนไฮต์สังเกตไหมว่าค่าสูงขึ้นกว่าเดิม
มาเพิ่มความซับซ้อนให้โปรแกรมเราอีกนิดนึง สมมติอยากให้เมื่อเริ่มโปรแกรมให้จอแสดงผลขึ้นข้อความให้เราเลือกได้ว่าจะให้แสดงผลอุณหภูมิเป็นองศาเซลเซียสหรือองศาฟาเรนไฮต์โดยกดปุ่มเลือก S1 หรือ S2 ตามลำดับ เมื่อแสดงผลเสร็จให้แสดงข้อความอีกทีวนไปเรื่อย ๆ ทำยังไงดี
หลักคิดคือ ค่อย ๆ คิดว่าจะมีขั้นตอนการทำงานส่วนย่อยต่าง ๆ ยังไงบ้างแล้วเอามาเรียงกันแล้วค่อยเขียนคำสั่งของแต่ละงาน เราอาจจะแบ่งขั้นตอนการทำงานของโปรแกรมได้ดังนี้
1. แสดงข้อความส่วนหัวว่าจะเป็นการวัดอุณหภูมินะ
2. อ่านค่าอุณหภูมิแล้วเก็บในตัวแปร TempC แล้วคำนวณค่าอุณหภูมิในหน่วยองศาฟาเรนไฮต์
3. รอค่าจากสวิตช์ S1 หรือ S2
4. ใส่เงื่อนไขถ้ากด S1 แสดงค่าองศาเซลเซียส แต่ถ้ากด S2 ให้แสดงค่าองศาฟาเรนไฮต์ (ให้รอการกดปุ่มก่อน)
5. วนกลับไป 1 อันนี้คือคำสั่ง Forever ไง
ลองเขียนบล็อกดูแล้วปรับลำดับนิด ๆ หน่อย ๆ มาดูภาพโปรแกรมเต็ม ๆ กัน
เป็นยังไงบ้าง ครั้งนี้เราก็ได้รู้จักเซ็นเซอร์ออนบอร์ดตัวสุดท้ายไปแล้ว ถึงแม้ว่า KidBright จะมีเซ็นเซอร์แค่สองตัวแต่ก็สามารถเอาไปประยุกต์ใช้เล่นอะไรได้อีกหลายอย่าง เซ็นเซอร์ทั้งสอง ตัวนี้อยู่ในกลุ่มเซ็นเซอร์วัดสภาพแวดล้อม ทีนี้ก็ขึ้นอยู่กับเราว่าอยากจะวัดที่ไหนและจะเอาค่าที่อ่านได้ไปทำอะไรแล้วแต่จินตนาการเลยนะ อ้อ..แต่อย่าเอาบอร์ดไปแช่น้ำตากฝนโดนแดดนะจ๊ะ มันอันตราย...ถ้าจะวัดสภาพแวดล้อมแบบน้ันแนะนำให้หาเซ็นเซอร์เฉพาะมาต่อแล้วส่งข้อมูลเข้าบอร์ด KidBright จะเหมาะสมกว่า
#Kidbright #Kidbright คืออะไร #Kidbright ทำอะไรได้บ้าง
ไม่มีความคิดเห็น:
แสดงความคิดเห็น