Page 127 - คู่มือสร้างและพัฒนาโปรแกรม Arduino และ POP-BOT
P. 127
127
/*******************************************************************************
* POP-BOT V1.0
* Filename : SwitchControlServo.pde
* Control a servo motor with 2 button switches at Di2 and Di4. Show on SLCD
********************************************************************************/
#include <popbot.h> // Include Library for POP-BOT
int pos=100;
void setup()
{
}
void loop()
{
if(in(2)==0)
{
if(pos<180)
{
pos += 20;
}
else
{
beep();
}
}
if(in(4)==0)
{
if(pos > 0)
{
pos -= 20;
}
else
{
beep();
}
}
servo(7,pos);
servo(8,pos);
lcd(“Pos: %d “,pos);
sleep(100);
}
การทํ างานของโปรแกรม
จุ ดมุ งหมายของโปรแกรมนี้ คื อ ควบคุ มตํ าแหน งแกนหมุ นของเซอร โวมอเตอร โดยใช สวิ ตช 2ตั ว และมี
การแสดงค าตํ าแหน งไปยั งโมดู ล SLCD เพื่ อแจ งให ผู ใช งานทราบด วย โปรแกรมจะตรวจสอบการกดสวิ ตช ที่ ขา
พอร ต Di2 และ Di4 ถ าหากสวิ ตช ที่ ขา Di2 ถู กกด ค าตํ าแหน งของเซอร โวมอเตอร (ค าของตั วแปร i) จะเพิ่ มขึ้ น
ครั้ งละ 20 แต ถ าหากเป นสวิ ตช Di4 ถู กกด ค าตํ าแหน งของเซอร โวมอเตอร จะลดลงครั้ งละ 20 เช นกั น
เมื่ อค าของตํ าแหน ง (pos) สู งขึ้ นหรื อลดตํ่ าลงจนเท ากั บค าตํ าหน งสู งสุ ดหรื อตํ่ าสุ ด ฟ งก ชั่ น beep จะถู ก
เรี ยกใช งานเพื่ อขั บเสี ยงออกทางลํ าโพงเป ยโซของหุ นยนต POP-BOT
โปรแกรมที่ A9-2 ไฟล SwitchControlServo.pde โปรแกรมภาษา C ของ Arduino
สํ าหรั บควบคุ มการเคลื่ อนที่ ของแกนหมุ นของเซอร โวมอเตอร