さて、3本目CPPのお話です。
今回は僕の担当分なので突っ込みどころはないはずですw
まずはCPP自体の解説をば、
CPPとはControllable Pitch Propellerの略(Cahen Pitch Propellerとの説も有りw)でプロペラのピッチ角を制御する機構のことです。プロペラのピッチを変化させることでプロペラの抗力と推力を変化させて、パイロットが疲労した際に軽く早く漕ぐという選択肢を増やす事ができます。イメージ的には自転車の変速機が近いと思います。
さて、CPPが搭載されたのは何も今年が初めてというわけではありませんが、電子制御で実際に飛行して使用されたのは初めてだそうです。(ちなみに、電動尾翼以上にパイロット以外の動力に抵触しそうなネタではあります。)
機構については専門外なので写真でスルーしたいと思います。
僕の担当の制御部分についてですけど、まずCPPの電子制御化で問題になるのが
どこから電源をとってどうやって指示を伝えるか
だったりします。CPPの機構はプロペラと一緒に回転しているのでコックピットと電線でつなぐとぐるぐるぐる~ブチッと行くのが眼に見えてるわけで、個人的には去年のCEATECで熱かった無線給電にチャレンジしたかったんですけどまぁ無理でしたw
んで、結果としてプロペラシャフト内に電池&回路。ギアボックス後部にも回路で、ペラシャフトとコックピットを赤外線で結びました。(ちなみに、鳥コンレギュレーションには遠距離無線通信の禁止とあるので5mmぐらいの無線通信は許してもらえるでしょうw)
ちなみに、赤外線通信の方式ですが1-wireという通信規格を丸パクリしました。
まずホスト側からのリセットパルスをトリガにスレーブ側がプレゼンスパルスを送ってスレーブの生存確認を行います。
次に0.64msずつホストからスレーブにパルスを送ります。パルス幅が0.4msのとき1を0.08msのときは0を表します。今回は一度の送信で16bitを送りました。(PICのTimer1の中身をまるまる送ってます。)
これを繰り返してコックピットからペラシャフトにデータを送ったんですが、一応エラーチェックも搭載しておきました。
一つが指定範囲外のデータを無視する機能と、もう一つが反転データの送信によるチェックで、通常のデータ(例えば0x1234)を送ったあと反転データ(例えば0xEDCB)を送って一致した時のみ採用するというようにしています。
今回送信するデータが偶々0x7FFF以下のものだけだったので、最上位ビットが1の時は反転データだというように見分けてます。(最初っから17bit送れよってかんじですがw)
ここまでの小難しい話できっと読むのをやめた人が多いと思うのでここから懺悔コーナー。
最終的には鳥コンできっちり動いてくれたCPPですが、そこに至るまでがひどかったんですよ。結局、CPPってのが電操駆動ペラの複合領域なせいで俺のせいでいろんな人に迷惑かけました。ということで「さぁ俺のミスを数えろ」ってことです。
まずひとつ、まぁ他に手がなかったんでしょうがないんですが、ペラシャフトにしてもギアボックスにしても強化と軽量化の果てに恐ろしく小さいところに回路とかケーブルを入れなきゃいけなくなっちゃったんでかなりキツキツになったんですね。
で、結果としていろんな所に無理がかかりまくったんですよ、その結果がこちら
もうブッチブッチとケーブルが切れるし、狭いところで回路はショートするしで散々な目に会いました。結局テストするのに駆動まわりとペラの組み立てをお願いしなきゃいけない(満足なテスト環境がない)ってのが大きな敗因ですね。今年は去年の機体の部品を使ったテストが行えるので少しは楽になるはずです。
あとは回路にアクセスしにくいってのも改善点の一つですよねぇ。回路のプログラムをチェックするのにペラを全部外してもらわなきゃいけないのはさすがに不便すぎるかなぁと思ってはいます。
あとは駆動に市販のRCサーボモーターを使用したせいで少し固定に少しガタがあったのも難点でしたね。このへんはサーボモーター内のポテンションメーターを高精度なものに変更するんでなんとかなるかなぁと思ってます。
ではまたまた長くなってしまったのでこのへんで。 CPPのここが知りたいとかありましたらコメントに書いてもらえるとなんか書くかもしれません。
なんか・・・スゴイんだね!