Arduinoで赤外線送信機のスケッチを組んでみました。出力は赤外発光ダイオード1個だけなので、あくまでもテストですが、そばに置いた誘電一型に搭載した受信機(IRX262)で、スロットルとラダーが問題なくコントロールできました。赤外線出力を大きくすれば体育館でインドアプレーンが飛ばせそうです。
今回テストした2チャンネル赤外線送信機の出力波形です。下はそのスケッチで、Arduino UNO互換機でテストしました。
// 2チャンネル赤外線送信機(38kHz)
// 2015/05/22 動作確認済み
void setup(){
pinMode(2, OUTPUT); // 2番ピンを出力に
}
void Modulation(){
for (int i = 0; i < 23; i++){ // 38kHz変調
PORTD = B00000100;
delayMicroseconds(9); // on
PORTD = B00000000;
delayMicroseconds(17); // off
}
digitalWrite(2, LOW);
delayMicroseconds(400); // total 1000us
}
void SignalOut(){
Modulation();
}
void loop(){
int ail = analogRead(A1);
int thr = analogRead(A3);
if (ail <= 0) ail = 1;
if (thr <= 0) thr = 1;
SignalOut(); // start
delayMicroseconds(ail);
SignalOut(); // ail
delayMicroseconds(500); // fix
SignalOut(); // ele
delayMicroseconds(thr);
SignalOut(); // thr
delay(15);
}
| Trackback ( )
|
|