충북대학교 SW중심사업단 고교 SW 멘토링 교육 / 양청고등학교
군집 드론 이론과 실습
목표 : 드론 2대를 네트워크로 묶어 동시에 명령에 따라 움직이도록 함, 2인 1조로 드론 제공해서 소프트웨어 학습을 수행
이전 코드
1
void setup() { Serial.begin(9600); } void loop() { if (Serial.available()) { Serial.println("Arduino : Hi, I'm Arduino!"); Serial.print("You : "); Serial.println((char)Serial.read()); } }
2
void setup() { Serial.begin(115200); Serial1.begin(115200); } void loop() { if (Serial.available()) { Serial.print("CMD : "); Serial.print(Serial1.read()); } if (Serial1.available()) { Serial.print("CMD : "); Serial.print(Serial1.read()); } }
3
void setup() { Serial.begin(115200); } void loop() { int cmd; if (Serial.available()) { cmd = Serial.read(); if (cmd == 'A') { Serial.println("Motor A!"); } if (cmd == 'B') { Serial.println("Motor B!"); } if (cmd == 'C') { Serial.println("Motor C!"); } if (cmd == 'D') { Serial.println("Motor D!"); } } }
4
void selMotor(int sel) { switch (sel) { case 'A' analogWrite(6, 10); delay(100); break; case 'B' analogWrite(10, 10); delay(100); break; case 'C' analogWrite(9, 10); delay(100); break; case 'D' analogWrite(5, 10); delay(100); break; } } void setup() { Serial.begin(115200); } void loop() { int cmd; if (Serial.available()) { cmd = Serial.read(); if (cmd == 'A') Serial.println("Motor A!"); if (cmd == 'B') Serial.println("Motor B!"); if (cmd == 'C') Serial.println("Motor C!"); if (cmd == 'D') Serial.println("Motor D!"); selMotor(cmd); delay(100); } }
1
int cnt = 0; int inBuf[11] = { 0, }; void setup() { Serial.begin(115200); Serial1.begin(115200); } void loop() { while (Serial1.available()) { int data = Serial1.read(); if (data == '$') cnt = 0; else cnt++; } }
댓글