#include <LotusMegaBot.h> สามารถดาวน์โหลดLibraryได้ที่นี่
คำสั่งในการเรียกใช้งาน
1. กลุ่มคำสั่งการสั่งงานเซอร์โวมอเตอร์
1.1 sv1(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 1
1.2 sv2(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 2
1.3 sv3(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 3
1.4 sv4(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 3
1.5 sv5(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 3
1.6 sv6(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 3
1.7 sv7(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 3
1.8 sv8(องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 3
1.9 servo(หมายเลขพอร์ตเซอร์โว,องศาเซอร์โวมอเตอร์); // ใช้กับเซอร์โวมอเตอร์ตัวที่ 1-3
2. กลุ่มคำสั่งการใช้งานเสียง
2.1 snd(ความถี่เสียง,ความยาวเสียง);
2.2 sound (ความถี่เสียง,ความยาวเสียง);
2.3 beep(); // ความยาวเสียงบิ๊ปสั้นๆ 1 ครั้ง
3. กลุ่มคำสั่งการทำงานมอเตอร์
3.1 run(ความเร็วมอเตอร์ซ้าย,ความเร็วมอเตอร์ขวา); // ความเร็วสามารถใช้ได้สูงสุด 255 ต่ำสุด -255 (เครื่องหมาย - จะกลับทาง)
3.2 runa(ความเร็วมอเตอร์ซ้าย,ความเร็วมอเตอร์ขวา); // ความเร็วสามารถใช้ได้สูงสุด 255 ต่ำสุด -255 (เครื่องหมาย - จะกลับทาง) เป็นการใช้งานมอเตอร์ 1 และ 2
3.3 runb(ความเร็วมอเตอร์ซ้าย,ความเร็วมอเตอร์ขวา); // ความเร็วสามารถใช้ได้สูงสุด 255 ต่ำสุด -255 (เครื่องหมาย - จะกลับทาง) เป็นการใช้งานมอเตอร์ 3 และ 4
3.4 runc(ความเร็วมอเตอร์ซ้าย,ความเร็วมอเตอร์ขวา); // ความเร็วสามารถใช้ได้สูงสุด 255 ต่ำสุด -255 (เครื่องหมาย - จะกลับทาง) เป็นการใช้งานมอเตอร์ 5 และ 6
3.5 RUN(ความเร็วมอเตอร์ซ้าย,ความเร็วมอเตอร์ขวา); // ความเร็วสามารถใช้ได้สูงสุด 255 ต่ำสุด -255 (เครื่องหมาย - จะกลับทาง) เป็นการใช้งานมอเตอร์ 1,3,5 เป็นมอเตอร์ซ้ายความเร็วเดียวกัน และ มอเตอร์ 2,4,6 เป็นมอเตอร์ขวาความเร็วเดียวกัน
3.6 run4(ความเร็วมอเตอร์ซ้าย,ความเร็วมอเตอร์ขวา); // ความเร็วสามารถใช้ได้สูงสุด 255 ต่ำสุด -255 (เครื่องหมาย - จะกลับทาง) เป็นการใช้งานมอเตอร์ 1,3 เป็นมอเตอร์ซ้ายความเร็วเดียวกัน และ มอเตอร์ 2,4 เป็นมอเตอร์ขวาความเร็วเดียวกัน
3.7 fd(ความเร็วของมอเตอร์ทั้งสองข้าง); //เดินหน้าความเร็วเท่ากัน 2 ล้อ ความเร็วตั้งแต่ 0-255
3.8 fd2(ความเร็วมอเตอร์ซ้าย,ความเร็วมอเตอร์ขวา); // ความเร็วตั้งแต่ 0-255 สามารถใช้ได้สูงสุด 255 ต่ำสุด -255 (เครื่องหมาย - จะกลับทาง)
3.9 bk(ความเร็วของมอเตอร์ทั้งสองข้าง); //ถอยหลังความเร็วเท่ากัน 2 ล้อ ความเร็วตั้งแต่ 0-255
3.10 ao(); //หยุดมอเตอร์ทั้ง 2 ล้อ
3.11 AO(); //หยุดมอเตอร์ทั้งหมด
3.12 tl(ความเร็วมอเตอร์ฝั่งขวา); //เลี้ยวซ้ายล้อเดียว ความเร็วตั้งแต่ 0-255
3.13 tr(ความเร็วมอเตอร์ฝั่งซ้าย); //เลี้ยวขวาล้อเดียว ความเร็วตั้งแต่ 0-255
3.14 sl(ความเร็วมอเตอร์ฝั่งซ้ายและฝั่งขวา); //เลี้ยวขวา 2 ล้อ ล้อขวาเดินหน้า ล้อซ้ายถอยหลัง ความเร็วตั้งแต่ 0-255
3.15 sr(ความเร็วมอเตอร์ฝั่งซ้ายและฝั่งขวา);//เลี้ยวขวา 2 ล้อ ล้อซ้ายเดินหน้า ล้อขวาถอยหลัง ความเร็วตั้งแต่ 0-255
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
5.1 oled(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy,ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษร ตัวอย่างการใช้งานเช่น oled(1,1,2,"Lotus Arduibot");
5.2 oledln(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy,ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป ตัวอย่างการใช้งานเช่น oledln(1,1,2,"Lotus Arduibot");
5.3 oled("ข้อความที่ต้องการให้แสดง"); //แสดงตัวอักษร
5.4 oledln("ข้อความที่ต้องการให้แสดง"); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป
5.5 oleddel(); // ลบข้อความออก
ชุดคำสั่งกรณีใช้ oledset และ oledplay (ใช้คู่กัน)
5.6 oledp("ข้อความที่ต้องการให้แสดง"); //แสดงตัวอักษร
5.7 oledp(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy,ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษร ตัวอย่างการใช้งานเช่น oledp(1,1,2,"Lotus Arduibot");
5.8 oledlnp(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy,ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป ตัวอย่างการใช้งานเช่น oledlnp(1,1,2,"Lotus Arduibot");
5.9 oledp("ข้อความที่ต้องการให้แสดง"); //แสดงตัวอักษร
5.10 oledlnp("ข้อความที่ต้องการให้แสดง"); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป
5.11 oledp(ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษร ตัวอย่างการใช้งานเช่น oledp(2,"Lotus Arduibot");
5.12 oledlnp(ขนาดตัวอักษร,ข้อความที่ต้องการให้แสดง); //แสดงตัวอักษรหลังจากเสร็จสิ้นข้อความนี้ข้อความอื่นจะขึ้นที่บรรทัดถัดไป ตัวอย่างการใช้งานเช่น oledln(2,"Lotus Arduibot");
ชุดคำสั่งใช้งานทั่วไป
5.13 oledset(); //คำสั่งเซตการใช้งานจอ oled ให้ใช้ใน void setup()
5.14 oledcur(จุดเริ่มต้นแกนx,จุดเริ่มต้นแกนy); // คำสั่งตำแหน่งการวางตัวอักษรแรก
5.15 oledsize(ขนาดตัวอักษร); // คำสั่งขนาดตัวอักษรที่จะแสดง
5.16 oledplay(); // คำสั่งแสดงตัวอักษร
6. กลุ่มการใช้งานเข็มทิศ HMC5883L
5.1 cpset (); //เซตค่าก่อนใช้งานในvoid setupก่อนใช้งานฟังก์ชันเข็มทิศทุกครั้ง
5.2 cp (); //แสดงค่ามุมอะซิมุท
5.3 cpx (); //แสดงค่าการหมุนรอบแกน x
5.4 cpy (); //แสดงค่าการหมุนรอบแกน y
5.5 cpz(); //แสดงค่าการหมุนรอบแกน z
วีดีโอตัวอย่างการใช้งาน
โค้ดตัวอย่างการใช้งาน
Arduino IDE Code
#include<LotusNanoBot.h>
void setup() {
ok();
run(100,100);delay(1000);beep();
run(-100,-100);delay(1000);beep();
ao();
}
void loop() {
oled(0,0,2,"A0 =");
oled(inA(0));
}