隠居エンジニアのものづくり

自転車 電子工作 ラジコン ロボカップジュニア CAD レーザー加工機

I2C

Arduino UNO もどき (Arduinoを用いたI2Cデバイス製作)

ArduinonのI2Cスレーブ動作 ArduinoにはI2Cスレーブデバイスとして動作させる為の関数が用意されています。 これを使えば、I2CモータドライバやI2Cセンサを作る事ができます。 例えば4chラインセンサを作る場合に必要なのはA/Dポート4個とSDA、SCLだけです。…

I2Cのノイズ対策 その6(オシロスコープを用いた静電容量推定)

はじめに 界隈ではオシロスコープで波形観測できる環境が整っている様なので、静電容量を推定して、Rpを決定する方法について解説します。 これにより、より正確なRp選定ができます。その5にて”I2Cバスに繋げる配線のトータルの長さを測り、配線長300mm当た…

I2Cのノイズ対策 その5(まとめ)

ロボットを設計・製作する手順としてまとめます。 ※オシロスコープを使える方はこちらの記事を御参照下さい。 ●バッテリー、モータドライバ、マイコンボードの電源線を一点接地できるようにレイアウトする。 I2Cのノイズ対策 その2(一点接地編) - 隠居エン…

I2Cのノイズ対策 その4(Rpの値 設計計算書の勧め)

I2Cのノイズマージンプルアップされた信号線をGNDに引っ張ることでLowにする方式ですので"Low Level"が守られている事が重要となります。各接続デバイスのノイズ・マージン(ヒステリシスを含む)はHigh側0.2VDD、Low側0.1VDD(I2Cバス仕様Ver2.1より引用)とL…

I2Cのノイズ対策 その3(信号線のGND)

信号GNDの処理 マイコン基板-モータドライバ間の信号線(下図黄色の線)のGNDは? "銅線は意外と重いのでGNDを省いて、信号線だけで接続!"としたい所ですよね。 サッカーライトウェイトのロボットで何例か見かけたのですが、絶対にしないでください。 この…

I2Cのノイズ対策 その2(一点接地編)

ノイズ対策が難しいのは、最終的にはケースバイケースとなってしまう所ではないでしょうか。つまり、この方法で全て解決と言う”王道”が存在しないと言うことです。ですが、ケースを絞り込めば”ある程度の王道”を示す事はできます。 と言うことで、ロボカップ…

I2Cのノイズ対策 その1(準備編)

ロボット教室でロボカップジュニアにチャレンジしている生徒さん達からI2Cのトラブル対策について質問を受けることが増えてきました。 そのそもI2Cは、直径220mmの筐体内での通信に不具合がでるほど脆弱な通信規格ではありませんので、不具合原因を特定しま…