โปรเจกต์ Temperature Plot โดยใช้ Processing และ Arduino
เป้าหมายหลักของโปรเจกต์นี้คือการแสดงวิธีการสร้าง Variable Graph โดยใช้ Processing environment และ Arduino
เป้าหมายหลักของโปรเจกต์นี้คือการแสดงวิธีการสร้าง Variable Graph โดยใช้ Processing environment และ Arduino
▶ กดเพื่อดูวิดีโอสาธิตโปรเจกต์
การพล็อตกราฟข้อมูลถูกนำมาใช้เพื่อสังเกตและอธิบายรูปแบบที่มองเห็นได้ภายในข้อมูล เป้าหมายหลักของโปรเจกต์นี้คือการแสดงวิธีการพล็อต Variable graph โดยใช้ Processing environment และ Arduino ในบทความนี้ Temperature จะถูกพล็อตบน Processing graph สภาพแวดล้อมของ Processing นั้นค่อนข้างคล้ายกับ Arduino แต่ความแตกต่างคือใน Processing เราสามารถพล็อตกราฟได้ ในขณะที่ใน Arduino เราไม่สามารถพล็อตกราฟรูปแบบใดๆ ได้ Processing Environment มีประโยชน์อย่างมากในกรณีของการพล็อต Analog graphs
ในที่นี้เราจะมาพูดถึงการพล็อตกราฟ Temperature บน Computer หรือ Laptop โดยใช้ Processing Environment และ Arduino วงจรสำหรับอ่านค่า Temperature นั้นง่ายมาก ในระบบนี้ใช้เพียงวงจร LM35 Temperature Detector / Reader เพียงตัวเดียว และเชื่อมต่อโดยตรงกับ Analog pin หมายเลข A0 ของ Arduino และมีการเชื่อมต่อ 16x2 LCD เข้ากับวงจรนี้เพื่อแสดงค่า Temperature ดู Block diagram ที่ให้ไว้ด้านล่างเพื่อทำความเข้าใจการทำงานของโปรเจกต์นี้
จาก Arduino เราเพียงแค่อ่าน Analog output จาก Temperature Sensor และหลังจากคำนวณบางส่วนแล้ว Arduino จะส่งข้อมูลไปยัง Processing โดยใช้ FTDI basic breakout แต่คุณสามารถใช้ TTL logic converters ตัวใดก็ได้เพื่อสื่อสารระหว่าง Desktop หรือ Laptop กับ Arduino แต่ใน Arduino UNO ไม่จำเป็นต้องใช้ตัวแปลงภายนอกอื่นๆ เพราะบอร์ด Arduino UNO ถูกกำหนดค่ามาพร้อมกับ Logic converter อยู่แล้ว แต่หากคุณมี Arduino UNO ที่บ้านหรือใน Lab คุณก็ควรจะมี TTL Logic Converter ไว้
สูตรสำหรับการคำนวณ Temperature แสดงไว้ด้านล่าง:
Temperature= Analog reading * (5.0/1023.0) * 100;
Processing: Processing เป็น Environment เหมือนกับ Arduino ใน Arduino เราใช้
Temperature= Analog reading * (5.0/1023.0) * 100;
Processing: Processing เป็น Environment เหมือนกับ Arduino ใน Arduino เราใช้
Void setup()
{
}
Void loop()
{
}
แต่ใน Processing เราใช้
Void setup()
{
}
และ
Void draw()
{
// main program;
}
Line (x1, y1, x2, y2)
ฟังก์ชันนี้ใช้สำหรับพล็อตเส้นบนกราฟ เส้น Trace ในกราฟก็ถูกพล็อตโดยใช้ฟังก์ชันนี้เช่นกัน
โดยที่:
X1 คือจุดเริ่มต้นในทิศทาง x บนกราฟ
Y1 คือจุดเริ่มต้นในทิศทาง y บนกราฟ
X1 คือจุดสิ้นสุดในทิศทาง x บนกราฟ
Y1 คือจุดสิ้นสุดในทิศทาง y
Font and Text
โดยการใช้ฟังก์ชัน Text เราสามารถพล็อต Text บน Graph window ได้
Text(“text”, x, y);
โดยที่:
Text= ข้อความตามที่คุณต้องการพล็อต
X = ตำแหน่งของ Text ในทิศทาง x
Y = ตำแหน่งของ Text ในทิศทาง y
Port
myPort = new Serial(this, Serial.list()[0], 9600);
การเลือก Port
โดยที่:
serial.list()[0] คือ Port
9600 คือ Baud rate
Circuit
โปรดอ้างอิงที่ Tab วงจร (Circuit diagram) สำหรับวงจรของโปรเจกต์นี้
Components Used
1. Arduino
2. Processing software (Environment)
3. LM35
4. Power supply
5. Connecting wires
6. FTDI breakout
7. 16x2 LCD
8. POT
9. Computer/Laptop
10. Solder Iron
Temperature Plot Using Processing - Code.rar
สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้