1

私のプロジェクトは、音声認識を使用して車の窓を制御することです。EasyVR arduino シールドと arduino MEGA を使用して、いくつかの LED の制御に成功しました。ここで、CAN-BUS arduino シールドを使用してウィンドウを制御したいと考えています。

私が所有する車にはOBD-IIコネクタがないため、2つのCAN-BUS arduinoシールドを備えた2つのarduinoを使用して、1つを送信機、もう1つを受信機にしています。CAN-BUS arduino シールドをプログラムして車の窓のシミュレーションを行う方法がわかりません。

私が使用しているCAN-BUSシールド:https ://www.sparkfun.com/products/10039

Arduino メガ : https://www.sparkfun.com/products/11061

4

3 に答える 3

1
  1. CAN バスは通信プロトコルです (RS485 に似ていますが、より信頼性があります)。それ自体は何も制御しません。
  2. ウィンドウ、ヘッドライト、またはその他のデバイスが I/O で制御され、I/O が CAN バスと通信している場合、ウィンドウ、ヘッドライトなどを制御できる可能性があります。
  3. Arduino用のCANバスシールドには、MCP2551 CANトランシーバーを備えたMicrochip MCP2515 CANコントローラーがあるため、2つ必要ありません。

同僚と電気自動車プロジェクトに取り組んでおり、Arduino と CAN バス シールドを使用して監視および制御することができます。

ウィンドウを制御したい場合は、次のセットアップを試す可能性を検討します。

  1. ウィンドウをボタンと電源から外します。
  2. 2 つのリレーを配置し、H ブリッジ (上下に移動) を使用してウィンドウ モーターを制御しますhttp://www.ebay.com/itm/1pcs-5V-2-Channel-Relay-Module-for-Arduino-PIC- ARM-DSP-AVR-Electronic-/261099571172?pt=LH_DefaultDomain_0&hash=item3ccabf47e4
  3. 窓が閉まるか、完全に開いたときにリレーをオンにするために、いくつかのリミットスイッチを配置します。
  4. これらのリレーを Arduino で制御します。

私の意見では、これが最も簡単な方法です。そして、CAN バスを投げる必要はありません。

EDIT また、車のいくつかの仕様を提供します。OBD II ソケットがない場合は、おそらく新しいものではないため、ウィンドウはボタンで制御されると思います。

于 2014-05-16T13:28:04.060 に答える
0

CAN シールドはレシーバーとトランスミッターの両方になることができますが、2 つ必要ではありません (2 つのネットワークをブリッジする場合を除きます。

残念ながら、ウィンドウの操作は標準的なメッセージがあるものではありません。実際、ウィンドウコントローラーは実際にはLINバス上にある場合があります(CANではありません)。LINシールドがあるかどうかはわかりませんが、比較的単純な物理層チップとUARTなので、何かを装備できるはずです.

次に、メッセージをリバース エンジニアリングする必要があります...

ワークショップ マニュアルから CAN/LIN バスがどのように見えるかを知ることができれば、適切なバスを利用する場所を見つけることができるはずです。

次に、バスを監視し、ウィンドウ スイッチを操作して、新しいメッセージが表示されるかどうか、または通常のメッセージの特定のビットが変化するかどうかを確認します。適切なメッセージを正しく再生するには、メッセージ内にシーケンス カウンターとチェックサムが含まれていることがよくあります。

于 2014-04-10T09:42:44.973 に答える