สารบัญ:

Adruino Serial Plotter: 5 ขั้นตอน (พร้อมรูปภาพ)
Adruino Serial Plotter: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Adruino Serial Plotter: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Adruino Serial Plotter: 5 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Plot Multiple Lines with Labels in Arduino on Serial Plotter 2024, พฤศจิกายน
Anonim
Adruino Serial Plotter
Adruino Serial Plotter
Adruino Serial Plotter
Adruino Serial Plotter
ภาพ
ภาพ

เพิ่มฟังก์ชัน Arduino Serial Plotter ลงใน Arduino IDE แล้ว ช่วยให้คุณสามารถสร้างกราฟข้อมูลอนุกรมจาก Arduino ไปยังคอมพิวเตอร์ของคุณได้แบบเรียลไทม์ หากคุณเบื่อที่จะเห็นข้อมูลอินพุตเซ็นเซอร์อะนาล็อกของ Arduino เทลงบนหน้าจอของคุณเช่น The Matrix ดูเหมือนว่าจะเป็นวิธีที่ดีกว่าในการมองเห็นสิ่งที่เกิดขึ้น พล็อตเตอร์แบบอนุกรมเป็นเครื่องมือออฟไลน์ที่ช่วยให้คุณเห็นภาพข้อมูลและแก้ไขปัญหาโค้ดของคุณแบบออฟไลน์โดยไม่ต้องใช้บริการของบุคคลที่สามเช่นการประมวลผลหรือพล็อต เนื่องจากไม่มีเอกสารอย่างเป็นทางการบนเว็บไซต์ Arduino เกี่ยวกับการใช้งานและการทำงานของ Serial Plotter ฉันจึงตัดสินใจจัดทำเอกสารการใช้งานและคุณสมบัติของมัน

คุณสมบัติ

  • พล็อตของหลายกราฟ
  • ออฟไลน์
  • กราฟปรับขนาดอัตโนมัติ
  • รองรับกราฟค่าลบ
  • เลื่อนอัตโนมัติตามแกน X
  • สีที่ต่างกันสำหรับแต่ละตัวแปร

แอปพลิเคชั่น

  • การแสดงข้อมูลออฟไลน์
  • การแก้ไขปัญหารหัส
  • การวิเคราะห์รูปคลื่น

อะไหล่ที่จำเป็น

Arduino - AliExpress หรือ Arduino Starter Kit - AliExpress

ขั้นตอนที่ 1: การพล็อตกราฟ

ภาพ
ภาพ

ตอนนี้คุณได้ติดตั้ง Arduino IDE เวอร์ชันล่าสุด (1.6.7 ขึ้นไป) แล้ว ถึงเวลาทำความเข้าใจว่า Serial Plotter ทำงานอย่างไร Arduino Serial Plotter รับค่าข้อมูลอนุกรมที่เข้ามาผ่านการเชื่อมต่อ USB และสามารถวาดกราฟข้อมูลตามแกน X/Y ได้ มากกว่าแค่การเห็นตัวเลขที่แยกออกมาบน Serial Monitor แกน Y แนวตั้งจะปรับตัวเองโดยอัตโนมัติเมื่อค่าของเอาต์พุตเพิ่มขึ้นหรือลดลง และแกน X คือแกน 500 จุดคงที่โดยแต่ละขีดของแกนเท่ากับคำสั่ง Serial.println() ที่ดำเนินการ กล่าวอีกนัยหนึ่ง พล็อตจะได้รับการอัปเดตตามแกน X ทุกครั้งที่ Serial.println() ถูกอัพเดตด้วยค่าใหม่

ภาพ
ภาพ
ภาพ
ภาพ

อย่าลืมตั้งค่าอัตรารับส่งข้อมูลของ Serial Plotter เพื่อให้ตรงกับรหัส

หลายแปลง

เมื่อแสดงรูปคลื่นหลายแบบ ทุกตัวแปร/ค่า/พารามิเตอร์ที่แยกจากกันจะแสดงโดยใช้สีที่ต่างกันดังที่แสดงด้านล่าง

ภาพ
ภาพ

เพื่อพล็อตตัวแปรหลายตัวหรือรูปคลื่นพร้อมกัน 'ช่องว่าง' จะถูกพิมพ์ระหว่างคำสั่งการพิมพ์ทั้งสอง

Serial.print(อุณหภูมิ);

Serial.print(" "); Serial.println(ความชื้น);

หรือ

Serial.print(อุณหภูมิ);

Serial.print("\t"); Serial.println(ความชื้น);

ในกรณีนี้ ค่าของอุณหภูมิและความชื้นของตัวแปรจะมีรูปแบบคลื่นที่แยกจากกันซึ่งถูกพล็อตบนกราฟเดียวกันพร้อมกัน

ขั้นตอนที่ 2: การสร้างภาพข้อมูลออฟไลน์

Image
Image

ฉันใช้ Arduino Serial Monitor ในระบบรดน้ำต้นไม้อัตโนมัติเพื่อแสดงภาพและพล็อตข้อมูลเซ็นเซอร์ความชื้น

ภาพ
ภาพ

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

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

  1. เชื่อมต่อเซ็นเซอร์สองตัวกับ Arduino. ของคุณ
  2. พิมพ์ค่าของเซ็นเซอร์ & อัปโหลดรหัส
  3. เปิดพล็อตเตอร์แบบอนุกรม
ภาพ
ภาพ

ฉันใช้ Serial Plotter ใน Tweeting Weather Station เพื่อให้เห็นภาพการอ่านเซ็นเซอร์ต่างๆ บน Weather Station รูปคลื่นด้านบนแสดงกราฟค่าอุณหภูมิ (26°C) และความชื้น (65%RH) ของเซ็นเซอร์ SL-HS-220

ขั้นตอนที่ 3: การแก้ไขปัญหา

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

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

ภาพ
ภาพ

ตัวอย่างที่ดีคือการแก้ไขปัญหาหุ่นยนต์หลีกเลี่ยงอุปสรรค ในตัวอย่างนี้ รูปคลื่นสีน้ำเงินแสดงถึงเซ็นเซอร์อัลตราโซนิก และรูปคลื่นสีเหลืองและสีแดงแสดงถึงมอเตอร์ด้านซ้ายและขวา เมื่อระยะห่างระหว่างสิ่งกีดขวางกับหุ่นยนต์ลดลง รูปคลื่นสีน้ำเงินจะลดลง ที่ค่าเกณฑ์ (ระยะทางขั้นต่ำ) เท่ากับ 10 หุ่นยนต์จะเลี้ยวขวา ดังนั้นมอเตอร์ทั้งสองจึงมีค่าต่างกัน ขวา=50 ซ้าย=100 คุณสามารถเห็นรูปคลื่นสีแดงลดลงและความเร็วคงที่ของรูปคลื่นสีเหลืองซึ่งแสดงถึงการเลี้ยวขวา

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

ภาพ
ภาพ

ขั้นตอนที่ 4: การสร้างและวิเคราะห์ฟังก์ชัน

ภาพ
ภาพ

ด้วยความรู้สึกในการเขียนโปรแกรมพื้นฐานและโค้ดสองสามบรรทัด Arduino สามารถทำหน้าที่เป็นตัวสร้างฟังก์ชันได้ Arduino สามารถผลิตรูปคลื่นสี่เหลี่ยม สามเหลี่ยม ไซน์ และฟันเลื่อย ใน Arduino IDE เวอร์ชันก่อนหน้านั้นสามารถสังเกตได้เฉพาะค่าของประเภทของรูปคลื่นที่สร้างขึ้นใน Serial Monitor โดยไม่ต้องสร้างภาพ จะใช้เวลาในการวิเคราะห์ผลลัพธ์โดยพิจารณาจากค่าตัวเลขเท่านั้น และนี่คือที่ที่ Serial Plotter มีประโยชน์ ในการมองเห็นรูปคลื่นที่เกิดขึ้น

ภาพ
ภาพ
ภาพ
ภาพ
ภาพ
ภาพ
Function Generator.ino
Function Generator.ino

Function Generator.ino

ขั้นตอนที่ 5: การปรับปรุงและเพิ่มเติมในอนาคต

ภาพ
ภาพ

Arduino IDE ต้องการการเพิ่ม Serial Plotter เป็นเวลานาน ได้เพิ่มฟังก์ชันการทำงานของ Arduino IDE แต่ยังขาดคุณสมบัติบางอย่าง:

  • สลับการเลื่อนอัตโนมัติ
  • ใช้ Serial Plotter & Serial Monitor พร้อมกัน
  • ต้องใช้มาตราส่วนแกน X/มาตราส่วนเวลา

เนื่องจากคุณสมบัติเหล่านี้ถูกเพิ่มเข้าไปใน Arduino IDE ฉันจะทำการเปลี่ยนแปลงต่อไปและเพิ่มขั้นตอนใหม่ให้กับคำสั่งนี้

แนะนำ: