การติดตั้งโปรแกรมArduino IDE เวอร์ชันที่ใช้งานกับบอร์ดLotus
สามารถดาวน์โหลดตัวติดตั้งได้ที่ลิงค์นี้ : https://drive.google.com/file/d/15kUH0InjwTtdY_Dpw2yc9oqk-fTtVT5j/view?usp=sharing
#include <LotusMegaBot.h> สามารถดาวน์โหลดLibrary สำหรับArduino IDE ได้ที่นี่
คำสั่งในการเรียกใช้งาน
1. กลุ่มคำสั่งการสั่งงานเซอร์โวมอเตอร์
1.1 sv1(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 1
1.2 sv2(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 2
1.3 sv3(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 3
1.4 sv4(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 4
1.5 sv5(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 5
1.6 sv6(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 6
1.7 sv7(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 7
1.8 sv8(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 8
1.9 servo(หมายเลขพอร์ตเซอร์โว,องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 1-8
2. กลุ่มคำสั่งการใช้งานเสียง
2.1 snd(ความถี่เสียง,ความยาวเสียง);
2.2 sound (ความถี่เสียง,ความยาวเสียง);
2.3 beep(); // ความยาวเสียงบิ๊ปสั้นๆ 1 ครั้ง
3. กลุ่มคำสั่งการทำงานมอเตอร์
3.1 run(ความเร็วมอเตอร์ซ้าย , ความเร็วมอเตอร์ขวา); // ความเร็วตั้งแต่ 0-255 ถ้ามอเตอร์หมุนกลับทางใส่เครื่องหมาย- ถ้าสั่งหยุดมอเตอร์ความเร็วเป็น 0
3.2 runa(ความเร็วมอเตอร์ซ้าย ,ความเร็วมอเตอร์ขวา); //มอเตอร์ไดซ์a ความเร็วตั้งแต่ 0-255 ถ้ามอเตอร์หมุนกลับทางใส่เครื่องหมาย- ถ้าสั่งหยุดมอเตอร์ความเร็วเป็น 0
3.3 runb(ความเร็วมอเตอร์ซ้าย , ความเร็วมอเตอร์ขวา); //มอเตอร์ไดซ์b ความเร็วตั้งแต่ 0-255 ถ้ามอเตอร์หมุนกลับทางใส่เครื่องหมาย- ถ้าสั่งหยุดมอเตอร์ความเร็วเป็น 0
3.4 runc(ความเร็วมอเตอร์ซ้าย , ความเร็วมอเตอร์ขวา); //มอเตอร์ไดซ์c ความเร็วตั้งแต่ 0-255 ถ้ามอเตอร์หมุนกลับทางใส่เครื่องหมาย- ถ้าสั่งหยุดมอเตอร์ความเร็วเป็น 0
3.5 RUN(ความเร็วมอเตอร์ซ้าย , ความเร็วมอเตอร์ขวา); // มอเตอร์ทั้ง6ตัวทำงานพร้อมกัน
3.6 RUN4(ความเร็วมอเตอร์ซ้าย , ความเร็วมอเตอร์ขวา); // มอเตอร์ทั้ง4ตัวทำงานพร้อมกัน ช่องไดซ์ที่aและb
3.7 fd(ความเร็วมอเตอร์ทุกตัว); // มอเตอร์ทั้ง6ตัวทำงานพร้อมกัน เดินหน้าตามความเร็วที่ใส่เข้าไปตั้งแต่ 1-255
3.8 fd2(ความเร็วมอเตอร์ซ้าย,ความเร็วมอเตอร์ขวา); // ความเร็วตั้งแต่ 0-255 สามารถใช้ได้สูงสุด 255 ต่ำสุด -255 (เครื่องหมาย - จะกลับทาง)
3.9 bk(ความเร็วมอเตอร์ทุกตัว); // มอเตอร์ทั้ง6ตัวทำงานพร้อมกัน เดินหน้าตามความเร็วที่ใส่เข้าไปตั้งแต่ 1-255
3.10 sr(ความเร็วมอเตอร์ทุกตัว); // มอเตอร์ทั้ง6ตัวทำงานพร้อมกัน เดินหน้าตามความเร็วที่ใส่เข้าไปตั้งแต่ 1-255
3.11 sl(ความเร็วมอเตอร์ทุกตัว); // มอเตอร์ทั้ง6ตัวทำงานพร้อมกัน เดินหน้าตามความเร็วที่ใส่เข้าไปตั้งแต่ 1-255
3.12 tr(ความเร็วมอเตอร์ทุกตัว); // มอเตอร์ทั้ง6ตัวทำงานพร้อมกัน เดินหน้าตามความเร็วที่ใส่เข้าไปตั้งแต่ 1-255
3.13 tl(ความเร็วมอเตอร์ทุกตัว); // มอเตอร์ทั้ง6ตัวทำงานพร้อมกัน เดินหน้าตามความเร็วที่ใส่เข้าไปตั้งแต่ 1-255
3.14 ao(); //มอเตอร์ทั้ง6ตัวหยุดการทำงาน
3.15 AO(); //มอเตอร์ทั้ง6ตัวหยุดการทำงาน
4. กลุ่มคำสั่ง IO
4.1 ok(); // คำสั่งทำงานหลังจากกดปุ่มD2
4.2 in(หมายเลขพอร์ตDigital); // คำสั่งรับค่า Input จากหมายเลขพอร์ต Digital เทียบเท่ากับ dititalRead(หมายเลขพอร์ตDigital);
4.3 out(หมายเลขพอร์ตDigital,สถานะ); // คำสั่งส่งค่า Output จากหมายเลขพอร์ต Digital เทียบเท่ากับ dititalwrite(หมายเลขพอร์ตDigital,สถานะ HIGH หรือ LOW);
4.4 inA(หมายเลขพอร์ตAnalog); // คำสั่งรับค่า Input จากหมายเลขพอร์ต Analog เทียบเท่ากับ analogRead(หมายเลขพอร์ตanalog);
4.5 inAA(หมายเลขพอร์ตAnalog I2C); // คำสั่งรับค่า Input จากหมายเลขพอร์ต Analog ADS1115-1105 เทียบเท่ากับ analogRead(หมายเลขพอร์ตanalog); ตัวอย่างการใช้งาน inAA(0); จะเปิดการอ่านค่าช่อง AA0
4.6 set(); // คำสั่งเตรียมใช้งาน oled ADS1115-1105 และ compass hmc5883l
4.7 Knob(); // คำสั่งเตรียมใช้งานตัวต้านทานปรับค่าได้ซึ่งต่อที่พอร์ต A7
4.8 sleep(เวลาที่ต้องการหน่วง); // เวลาที่ต้องการหน่วงในหน่วยมิลลิวินาที
5. กลุ่มการแสดงผลออกทาง OLED
กลุ่มคำสั่งoledที่แสดงผลเลยโดยไม่ต้องพิมพ์คำสั่ง oledplay ( ) (แนะนำใช้ร่วมกับฟังก์ชันok(); หลักงvoid setup())
5.1 คำสั่ง oled
5.1.1.oled(x,y,ขนาด,"text"); // แสดงอักษรโดยการเซตตำแหน่ง x,y,ขนาดตัวอักษร, "ตัวอักษร text" หากมีการแสดงผลผ่านoledที่มาต่อจะแสดงที่บรรทัดต่อไป
5.1.2.oled(x,y,ขนาด,ตัวเลข); // แสดงอักษรโดยการเซตตำแหน่ง x,y,ขนาดตัวอักษร,ตัวเลข หากมีการแสดงผลผ่านoledที่มาต่อจะแสดงที่บรรทัดต่อไป
5.1.3.oled("text"); // แสดงอักษร "ตัวอักษรtext"หากมีการแสดงผลผ่านoledที่มาต่อจะแสดงที่บรรทัดต่อไป
5.1.4.oled("num"); // แสดงตัวเลข หากมีการแสดงผลผ่านoledที่มาต่อจะแสดงที่บรรทัดต่อไป
5.2 คำสั่ง oledln
5.2.1 oledln(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy,ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป ตัวอย่างการใช้งานเช่น oledln(1,1,2,"Lotus Arduibot");
5.2.2.oledln(x,y,ขนาด,ตัวเลข); // แสดงอักษรโดยการเซตตำแหน่ง x,y,ขนาดตัวอักษร,ตัวเลข หากมีการแสดงผลผ่านoledที่มาต่อจะแสดงที่บรรทัดต่อไป
5.2.3.oledln("text"); // แสดงอักษร "ตัวอักษรtext"หากมีการแสดงผลผ่านoledที่มาต่อจะแสดงที่บรรทัดต่อไป
5.2.4.oledln(num); // แสดงตัวเลข หากมีการแสดงผลผ่านoledที่มาต่อจะแสดงที่บรรทัดต่อไป
5.3 oleddel(); // ลบข้อความออก
ชุดคำสั่งกรณีใช้ oledset และ oledplay (ใช้คู่กัน)
5.4 oledp("ข้อความที่ต้องการให้แสดง"); //แสดงตัวอักษร
5.5 oledp(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy,ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษร ตัวอย่างการใช้งานเช่น oledp(1,1,2,"Lotus Arduibot");
5.6 oledlnp(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy,ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป ตัวอย่างการใช้งานเช่น oledlnp(1,1,2,"Lotus Arduibot");
5.7 oledp("ข้อความที่ต้องการให้แสดง"); //แสดงตัวอักษร
5.8 oledlnp("ข้อความที่ต้องการให้แสดง"); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป
5.9 oledp(ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษร ตัวอย่างการใช้งานเช่น oledp(2,"Lotus Arduibot");
5.10 oledlnp(ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป ตัวอย่างการใช้งานเช่น oledln(2,"Lotus Arduibot");
ชุดคำสั่งใช้งานทั่วไป
5.11 oledset(); //คำสั่งเซตการใช้งานจอ oled ให้ใช้ใน void setup()
5.12 oledcur(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy); // คำสั่งตำแหน่งการวางตัวอักษรแรก
5.13 oledsize(ขนาดตัวอักษร); // คำสั่งขนาดตัวอักษรที่จะแสดง
5.14 oledplay(); // คำสั่งแสดงตัวอักษร
กลุ่มคำสั่งใช้งานเดิม
5.15.OLED.begin(SSD1306_SWITCHCAPVCC, 0x3C); // กำหนดแอดเดรสของพอร์ตจอเป็น 0x3C (for the 128x64)ใช้ในvoid setup()
5.16.OLED.setCursor(x,y); //ตั้งค่าตำแหน่งxyเริ่มต้นของตัวอักษรหรือตัวแรก
5.17.OLED.setTextSize(ขนาด);//ตั้งค่าขนาดตัวอักษร
5.18.OLED.print(ตัวเลขหรือตัวอักษรที่แสดงผ่านจอ); // ตัวเลขหรือตัวอักษรผ่านจอ
5.19.OLED.println(ตัวเลขหรือตัวอักษรที่แสดงผ่านจอ); // ตัวเลขหรือตัวอักษรผ่านจอทีละบรรทัด
5.20.OLED.display(); // การแสดงผลผ่านจอ
5.21.OLED.clearDisplay(); //ล้างหน้าจอ
6. กลุ่มการใช้งานเข็มทิศ HMC5883L
5.1 cpset (); //เซตค่าก่อนใช้งานในvoid setupก่อนใช้งานฟังก์ชันเข็มทิศทุกครั้ง
5.2 cp (); //แสดงค่ามุมอะซิมุท
5.3 cpx (); //แสดงค่าการหมุนรอบแกน x
5.4 cpy (); //แสดงค่าการหมุนรอบแกน y
5.5 cpz(); //แสดงค่าการหมุนรอบแกน zฟ