Задача управления двигателем постоянного тока с помощью ИК пульта оказалась не так проста, как виделась в начале пути. Пришлось разбираться, как фридуино взаимодействует с модулем Motor Shield V3 и его библиотеками и ИК-устройствами на плате – с первого раза не запустилось, со второго тоже… В общем был выбран другой путь – драйвер двигателя L293DNE (спасибо http://www.myrobot.ru/stepbystep/el_simple_robot.php) и его интеграция с фридуино и ИК – приемником TSOP1736 . Схему приведу позже. В общем все работает – как видно из приведенного видео и фотографий.
Видео (скачать) - MAH09697_1
И фотографии:
Скетч программы (не очень много комментариев )
#include <IRremote.h> int RECV_PIN = 11; IRrecv irrecv(RECV_PIN); decode_results results; const int outR = 12; const int outL = 13; void setup() { Serial.begin(9600); irrecv.enableIRIn(); // Start the receiver pinMode(outR, OUTPUT); pinMode(outL, OUTPUT); } void loop() { if (irrecv.decode(&results)) { Serial.println(results.value); if (results.value == 16734375) { Serial.println("R"); digitalWrite(outR, HIGH); digitalWrite(outL, LOW); } if (results.value == 16740495) { Serial.println("L"); digitalWrite(outR, LOW); digitalWrite(outL, HIGH); } if (results.value == 16713975) { Serial.println("stop"); digitalWrite(outR, LOW); digitalWrite(outL, LOW); } irrecv.resume(); // Receive the next value } }