タグ付けされた質問 「communication」

3
ロボットアームのプロセッサ間通信
私は趣味の6自由度ロボットアームを構築していますが、プロセッサ間で通信するのに最適な方法は何ですか(3〜4 AVR、最大18インチの間隔)。Atmega32u4 USB-to-???経由でマイクロプロセッサにコマンドを送信するコンピューターで制御ループを実行したいと思います。ブリッジ。 私が検討しているいくつかのアイデア: RS485 長所:同じワイヤ上のすべてのプロセッサ、より堅牢な差動信号 短所:追加のチップが必要、プロセッサが同時に送信するのを防ぐためにプロトコルを書く(または見つける)必要がある UARTループ(つまり、1つのプロセッサのTXが次のプロセッサのRXに接続されます) 長所:シンプルなファームウェア、プロセッサーにはUARTが組み込まれています 短所:最後の接続はロボットの長さを移動する必要があり、各プロセッサはメッセージを再送信するサイクルを費やす必要があります CANbus(これについてはほとんど知りません) 私の主な考慮事項は、ハードウェアとファームウェアの複雑さ、パフォーマンス、価格です(高価な標準システムを購入することはできません)。

3
低速(30Hz)システムで高速(200Hz)リアルタイムシステムを制御するにはどうすればよいですか?
現在、複数の制御された自由度とセンサーを備えた移動ロボット+取り付けアームを設計しています。 私は2つの部分でアーキテクチャを検討しています: アームモーターとエンコーダーを制御するための一連のリアルタイムコントローラー(XenomaiなどのRTOSを実行するRaspeberry Piまたはベアメタルマイクロコントローラー)。マイクロコントローラーの数に応じてx = 1,2,3…でこれらのマシンをRTxと呼びましょう。この制御ループは200Hzで実行されます。 ROSを実行してSLAM、mocapを計算し、高レベルのロジックを実行する強力なバニラLinuxマシン(ロボットのタスクを決定し、モーターの希望する位置と速度を計算します)。この制御ループは30Hzで実行されます。 より多くのモーター、より多くのセンサー、より多くのPC(外部のモーションキャプチャーなど)を考慮して、フレームワークをスケーラブルにする必要があることを知っています。 私の主な問題は、さまざまなRTxがPC1と通信する方法を決定することです。ロボットアーキテクチャ(HRP2など)に関連する論文を見てきましたが、ほとんどの場合、高レベルの制御アーキテクチャについて説明していますが、低レベルと高レベルでスケーラブルな方法で通信する方法に関する情報はまだ見つかりません。私は何か見落としてますか? 高速RTマシンを接続して、モーター制御をPC1で保証するために、TCP / IP、CAN、およびUARTを検討しました。 TCP / IP:確定的ではありませんが、簡単に配置できます。非決定性は本当の問題ですか(とにかく遅い30Hzでしか使用されないため)? CAN:低速で、非常に信頼性が高く、車をターゲットにしています(ロボットでCANを使用する例がいくつかありますが、エキゾチックに見えました) UART:モーター制御用のRTマシンが1つしかなかった場合、UARTを検討していましたが、このポートは多くのRTxでうまくスケールしないと思います。とても使いやすい… 現時点では、私にとって明らかな解決策はありません。また、特定の信頼性が高くスケーラブルなソリューションを使用した深刻なロボットの例は見当たらないため、選択する自信がありません。 誰かがこの点または指摘する文献について明確な見解を持っていますか?ロボットで使用される一般的なまたは主流の通信ソリューションはありますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.