ジャイロセンサーを使った旋回制御動作の際、指定した回転角より多く回転する動きを見せることがあります。 ドリフトや振動などの影響もありますが、他のプロセスと協調動作を行う関係上、ある程度はしかたがないことと考えていました。 そんな折、このような情報(?)を目にしました。
Linux リアルタイムカーネルを使いたかった – TK’s HP

桜とハウスローバー
リアルタイム性は、ハードウェアにより近いシステム、例えばarduinoのようなものでなければ難しいと思っていましたが、リアルタイムカーネルで実現可能なことを知ったのです。
さらに調べていくと、下記サイトに重要な事が…
プログラムを実行する優先度を変更 – Linuxコマンド
プログラムを実行する時に優先度を指示できるコマンドがあったのです。 それはnice(!)
「ジャイロセンサーを使う」の旋回用プログラムをniceコマンドで実行してみます。 nice値は最優先の-20です。
nice -n -20 sudo ./gyro_turn11 r 90
すごい!素晴らしい! 全くと言えるほどズレがなく、何度実行しても再現性抜群です。
今後の開発にも非常に有効な情報であったと思うと同時に、知らなかったことの怖さも実感したのでした。
関連記事
ジャイロセンサーを使う 小型の電動ヘリが出始めの頃、ジャイロセンサーは高級なイメージだったように思います。 ジャイロといえば、地球ゴマが一定の姿勢を保つ動きが連想 […]
ハウスローバーのハードウェア仕様 ハウスローバーのブロック図です。
インターフェース基板には、モータードライバ、ジャイロセンサー、RTC […]
View Direction Rotation Control System ハウスローバーを無線LAN経由でコントロールする場合、webカメラの映像や命令には遅延が生じます。直進の場合は距離センサーのデータを参考に […]
Webコントロールの画面構成 webコントロール画面は、MJPG-Streamerのストリーミング映像を中心に構成しています。
機能面では、Motionの方が充実して […]
2016年の製作計画 謹賀新年。
昨年の年頭にも開発計画を立て、8割位は実行できたと思います。 年末には駆け込みで新型シャーシの製作も行いました。 総括とし […]
新型シャーシの製作 今年も残すところ2週間となりましたが、ついに新型シャーシの製作に着手しました。 素材はアルミ、自力での加工を選択しました。 タイヤやサーボ […]