回路の組み立て方
ロボキット 基板回路の作製
また下図バツ印のパーツは本キットでは使用しないため、はんだ付けは不要です。送付したパーツのみではんだ付けする場合、下記の不要箇所にはんだ付けすると他の必要箇所のパーツが足りなくなる恐れがあります。 必ず不要箇所意外を優先してはんだ付けをしてください。
作業の流れ
- 本体基板のはんだ付け
- はんだ付けについて
- 抵抗のはんだ付け
- コンデンサとLEDのはんだ付け
- コネクタとFETのはんだ付け
- ソケットのはんだ付け
- コントローラ基板のはんだ付け
- 抵抗のはんだ付け
- コネクタのはんだ付け
- 電池・ケーブルの接続
- DCモータとケーブルのはんだ付け
- 電源・ケーブルの接続
- F303K8マイコンの0Ω抵抗について
1. 本体基板のはんだ付け
1-1. はんだ付けについて
はんだ付けのコツ等については↓のサイトや動画を参照してください。
1-2. 抵抗のはんだ付け
まずは最も背が低い抵抗からはんだ付けをします。基板上の「R」から始まる13個のパーツが抵抗です。各番号で指定された抵抗値を持つ抵抗を、向きを気にせずはんだ付けします。
抵抗は流したい電流の大きさを調整するために使用します。例えば、3.3V電源で1kΩ抵抗を用いれば高校物理で習ったように、 $$ \begin{aligned} 電流 I &= \frac{3.3\mathrm{V}}{1\mathrm{k}Ω} \ &=3.3\mathrm{m(ミリ)A} \end{aligned} $$ の電流が流れます。キットに使うようなLEDを光らせるなら5mA未満で構いません。逆に抵抗値を小さくすると大きな電流が流れます。しかし電流が大きすぎるとパーツに大きな負荷や熱がかかり破損する可能性があります。抵抗はいたずらに電流を妨げるのではなく、適切な電流の大きさに制限する調整弁と言えます。
抵抗は100Ωや510k(510キロ=510000)Ω、2M(2メガ=2000000)Ωなどそれぞれ固有の抵抗値を持っていますが、この値を判断するのに使うのがカラーコードです。抵抗に彩色された4本(ないし5本)の赤や黄色、青の線はそれぞれある数を表しており、例えば茶は1、黒は0、橙は3です。また片方の端の色は金色か銀色です。この端の金銀は抵抗の品質誤差を表しており金色なら表示抵抗値の+-5%以内の誤差、銀色なら+-10%以内の誤差があることを示しています。
R2の場合、左から茶黒橙金と4本線を持っています。このうち3番目の橙は10の乗数を表しており、橙なら10の3乗を掛けることを意味します。この乗数を用いることで何十万といった大きな数もカラーコードで表記できます。そのためR2の茶黒橙金は、 $$ \begin{aligned} 茶黒橙金 &= 1 \quad 0 \quad 3 \quad \pm5 \ &=10 \times 10^3 \pm5 %\ &=10\mathrm{k} (Ω) \pm5 % \ \end{aligned} $$ を意味します。このようにして次の表の通りに他の抵抗もはんだづけします。なお、基板上で値が「led」となっている抵抗はLEDライトに流れる電流を決定します。今回は明るすぎず見やすい1kΩとします。
下記表の番号にて不要と記載されている箇所へのはんだ付けは必要ありません。発送したパーツによってはこの箇所へはんだ付けすると他の必要な箇所で使うパーツが足りなくなるため、必ずR1~R10を優先してください。
番号 | カラーコード | 抵抗値(Ω) |
---|---|---|
R1 | 黄紫茶金 | $$47\times10^1=470$$ |
R2 | 茶黒橙金 | $$10\times10^3=10\mathrm{k}$$ |
R3 | 黄紫茶金 | $$47\times10^1=470$$ |
R4 | 茶黒橙金 | $$10\times10^3=10\mathrm{k}$$ |
R5 | 茶黒赤金 | $$10\times10^2=1\mathrm{k}$$ |
R6 | 茶黒赤金 | $$10\times10^2=1\mathrm{k}$$ |
R7 | 茶黒赤金 | $$10\times10^2=1\mathrm{k}$$ |
R8 | 茶黒赤金 | $$10\times10^2=1\mathrm{k}$$ |
R10 | 茶黒赤金 | $$10\times10^2=1\mathrm{k}$$ |
R11 | 赤赤茶金 | $$22\times10^1=220$$ |
R12 | 茶黒橙金 | $$10\times10^3=10\mathrm{k}$$ |
R13 | 赤赤茶金 | $$22\times10^1=220$$ |
R14 | 茶黒橙金 | $$10\times10^3=10\mathrm{k}$$ |
この時上の写真だとR2とR8では抵抗の大きさが異なります(注: 実際に送付した抵抗とは大きさが異なる場合があります)。R2は大きく、R8は小さいです。これは流してもいい最大の電流量である「定格」が異なるからです。 大きいR2は1/2W抵抗といい、抵抗値 \(\mathrm{R}\) \(\times\) 電流 \(\mathrm{I}\) \(^2\) = 電力 が0.5W(ワット)まで耐えられます。一方小さいR8は1/6W抵抗といい、0.167Wまでしか耐えられません。この定格を超えると抵抗に流れる電流によるジュール熱が限界を超え、抵抗が焼損してしまいます。発熱により文字通り焼けてしまい回路が壊れ発火の危険もあります。高校物理などでの電気回路の問題では無限に電流が流せたりと仮定しますが、実際にはその発熱などを考慮する必要があります。モータなど大電流が流れる回路を作る際は、最大どの程度電圧がかかり電流が流れるのかを事前に確認し、定格の範囲内で安全に使用する必要があります。
1-3. コンデンサとLEDのはんだ付け
続いてコンデンサとLEDをはんだ付けします。ここで注意しなくてはならないのは抵抗と違い「向き」があることです。 LEDは発光「ダイオード」と言うように、ダイオードとして電流が流れる向きがあります。この向きに注意しないと電流が流れずライトが光りません。LEDの場合2つの金属線(リード)が生えていますが、長いリードの方を電圧が高いプラス側に接続し、短いリードの方を電圧が低いマイナス側に接続します。
この基板では5つのLEDは全て基板上側(穴に+の印がある方)がプラスです。こちら上側にLEDの長い線の方を挿し込み、下側に短い方を挿し込みます。LED1,LED2,LED3はプログラムから自由に点滅させることができます。対してLED4,LED6は電源が接続されている時は点きっぱなしの電源接続確認用のLEDです。LED4はモータ側の電源(単三乾電池)を、LED6はマイコン側の電源(9V電池)の有無を反映します。
番号 | 色(任意で可) |
---|---|
LED1 | 緑 |
LED2 | 黄 |
LED3 | 赤 |
LED4 | 青 |
LED6 | 青 |
同じく接続する向きが存在するコンデンサをはんだづけします。今回は青い米粒状のものと黒い筒状のものの2種類のコンデンサを使用します。 青い米粒は積層セラミックコンデンサと言い、こちらは向きの区別なく使用できます。小さく向きの区別が無いため使いやすいですが、大きな容量のものは少ないです。他方の黒い筒は電解コンデンサと言い、リード線が長い方をプラス側に挿す必要があります。大型で向きに注意する必要がありますが、大容量のものが多いです。 表面に104と書かれた青い積層セラミックコンデンサをC1にはんだ付けします。黒い筒の電解コンデンサも向きに注意してC2にはんだ付けしますが、この時「横倒しにする」ことに注意してください。 横倒しにしないとコンデンサとマイコン(F303K8)が干渉してしまいます。一度はんだ付けすると動かしにくいです。はんだ付け前に横倒しになっていることを確認しながら接続します。
番号 | パーツ名 | 向き |
---|---|---|
C1 | 積層セラミックコンデンサ 0.1u(マイクロ)F | 無し |
C2 | 電解コンデンサ 100uF | 有り |
このコンデンサの使用理由としては「ノイズの低減」のためです。IMUやマイコンなどのデジタルICが動作すると0(0V)と1(3.3V)が高速で入れ替わります。これにより逆起電力が発生しGNDやつながった配線に予期せぬ電流、ノイズが発生します。このノイズがそのまま周囲の機器に伝搬されてしまうと、機器の誤作動につながってしまいます。
ノイズが発生しうる機器(上図だとIMU)のノイズが別の機器(F303マイコン)に流入しないようにするためには、その間にセラミックコンデンサを挟むことでノイズの衝撃を緩和され、ノイズを抑えることができます。一般にこのようなノイズは正電源と負電源(GND)に乗っかるため、このノイズ低減の役割でICの電源-GNDをつなぐように配置されたコンデンサをパスコンと言います。今回のキットのセラミックコンデンサもそのパスコンです。多くの場合0.1uF程度が使われます(高周波ノイズには比較的低容量のコンデンサの方が反応しやすいため)。 またF303マイコンの9V正電源、GND間にも大容量の100uF電解コンデンサがつながれています。こちらはノイズ対策に加え予備電源のような役割もします。9V電源はDCモータにも使われており、モータが瞬間的に大電流を持ち去ってしまう場合があります。これではマイコン側まで電流が届かず不安定なため、100uFコンデンサを置いて電気を蓄えておくことで安定して電源を供給し続けられるように配慮します。
1-4. コネクタとFETのはんだ付け
サーボモータやコントローラのケーブルを接続するコネクタをはんだ付けします。写真の白い7つの長方形がそれぞれ基板とケーブルの信号を伝達するコネクタです。今回は「XH」という規格のコネクタを使います。このXHコネクタも向きに決まりがあるので注意が必要です。
上の図の様にXHコネクタには切れ込みがあります。これが基板の左か下を向くように配置してはんだ付けします。 向きが反対だと接続するケーブルが逆向きになり、本来とは別の線同士がつながってしまうので注意してください。
番号 | ピン数 |
---|---|
X5 | 3 |
X8 | 3 |
X9 | 7 |
基板左中央の2つの黒いFETも接続します。FETはICがモータを操作するのに使用し、信号に応じてモータを動かしたり止めたりします。FETには3本のピンがありますが、そのうち左の1本に門(ゲート)の開閉信号を送ることで残り2ピンで大電流を通す/止めることができます。FETを使うことで小さなICの微小な開閉信号でモータに流す大電流を操作することが可能になります。
このFETには上記のようにピンごとの役割が別れているため、正しい向きがあります。型番が記載された黒い面を下側に、金属板が貼られた銀色の面を上側に向けてはんだ付けします。この時FETのピン同士の幅が狭いため、誤ってはんだでつながってしまわないよう注意してください。
番号 | パーツ名 |
---|---|
FET_DC1 | 2SK4017(Q) |
FET_DC2 | 2SK4017(Q) |
1-5. ソケットのはんだ付け
メイン基板の最後はソケットのはんだ付けです。カラーコード読みや向きはありませんが、今度は「綺麗さ」が重要です。
写真のピンクのソケットをはんだ付けします(色はキットと異なります)。右2列が15ピンずつ、左の短いのが8ピンです。これをピンソケットを分割して作ります。最終的には分割したソケットを1ピンずつはんだ付けしますが、まずはそのうち1ピンだけはんだ付けします。1箇所だけ固定することでソケットを基板に仮留めして、ソケットが基板に垂直になるよう調整します。
両側ともソケットを垂直に立てることでマイコンを正しく差し込むことができます。一方ソケットが傾いてはんだ付けされているとマイコンが上手く挿し込めません。 またIMUの方のソケットもはんだ付けしますが、ここも垂直にしないとIMUが傾いてしまいます。傾くと重力加速度や回転角の検出時に誤差が生じてしまうため、必ず仮留めして水平に搭載できるよう角度を確かめてから他のピンもはんだ付けします。
番号 | パーツ名 | ピン数 |
---|---|---|
A1 | ピンソケット | 15ピン x 2 |
ITG/MPU | ピンソケット | 8ピン |
基板左側のXHコネクタもはんだ付けします。こちらも1ピンだけ仮留めを行い、金属端子が基板に平行になるように調整してから他方のピンもはんだ付けします。 金属端子が下を向いてしまうとコネクタが上手く挿せないため注意してください。 これにて本体基板のはんだ付けは終了です! 次はコントローラ基板のはんだ付けに移ります。
2. コントローラ基板のはんだ付け
コントローラでも背の低いパーツからはんだ付けするという原則は変わりません。まずは抵抗から始めます。
2-1. 抵抗のはんだ付け
基板中央部の抵抗、コンデンサ、LEDをはんだ付けします。コンデンサは青い米粒型の積層セラミックコンデンサを使うので向きはありません。一方LEDは向きが有り基板上側がプラス、下(ロゴ絵)側がマイナスです。上側に長い方のリード線を挿し込みます。
番号 | パーツ名 |
---|---|
R1 | 抵抗 10kΩ |
R7 | 抵抗 1kΩ |
C1 | 積層セラミックコンデンサ 0.1uF |
LED1 | 3mm LED青色(色任意) |
2-2. コネクタのはんだ付け
続いてXHコネクタとジョイスティックを接続するピンヘッダをはんだ付けします。 まず2つのXHコネクタを取り付けます。7ピン、2ピンのものがありますが、どちらも基板上側に切れ込みがある方が来るようにします。
番号 | パーツ名 | 切れ込み |
---|---|---|
X1 | XHコネクタ 2ピン | 上側 |
X2 | XHコネクタ 7ピン | 上側 |
そして左側のピンヘッダです。これは写真ではジョイスティックを取り付けた後なので分かりにくいですが(適当な写真が無くてすみません)、まずは5ピンのピンヘッダをはんだ付けします。 このピンヘッダに直交するようにジョイスティックをはんだ付けします。写真ではジョイスティックのピンにソケットを被せ、ソケットをはんだ付けすることでジョイスティックが取り外せるようにしています。今回のキットではジョイスティックを外すことはないので、ジョイスティックを直接ピンヘッダにはんだ付けして固定してしまっても構いません。 最後に基板右側に空いた穴にあたる回転ボリュームを取り付けます。このツマミを調整することで機体を回転させます。
回転ボリュームはまず穴の上側に空いた3つの穴にボリュームの3つのピンを挿し込みます。その後台座を穴に押し込みます。この時少し力が要ります。 これで回路製作は全て終了です!あとはケーブルと電池をつなげば完成です。
3. 電池・ケーブルの接続
3-1 DCモータとケーブルのはんだ付け
DCモータに電流を流すケーブルをはんだ付けします。2つのDCモータの一方に赤いリード線を、他方に黒いリード線をはんだ付けします。2つとも同じ端子には同じ色のリード線を使ってください。 キットでは既にリード線の端にXHコネクタのソケットが付いていますが、上記のようにモータ端子のリード線の色を2つともそろえると基板のコネクタに対し赤黒の線が逆向きに差さります。この状態だと、写真左のDC1には黒から赤へ、右のDC2には赤から黒へ電流が流れます。これによりモータは逆向きに回転するようになります。キットの構造・制御上、FETから来る電流に対し逆向きに回転する必要があります。
3-2. 電源・ケーブルの接続
最後に電池とケーブルを接続します。
まず本体基板左下の2つのXHコネクタにはそれぞれDCモータを接続します。続いて写真右上の本体基板中央の縦置きされた下2つの3ピンXHコネクタにサーボモータを接続します。その後ピンクのソケットの8ピンの方にIMUを、15ピンx2の方にF303K8マイコンを挿します。この時マイコンのUSB端子を基板上側にします。
XH7ピン1.5mケーブルで本体基板とコントローラ基板を接続します。コントローラ基板のXH2ピンには9V電池用のリード線を接続します。
全て接続されたら電源となる電池を接続します。本体基板左上の2つのXHコネクタにはそれぞれ単三電池3本の4.5V電池ボックスを接続します。ここで注意が必要なのは、この時使用する計6本の電池は必ず新品のものを使用してください。回路の構成上、モータ用の電流をまかなうため2つの4.5V電源が並列接続されています。このため2つの電源に電位差があると(例えば3.0Vと4.5Vが並列接続になると)電源が不安定になります。新品の電池を使用して同じように使用することで、どちらの電池ボックスも同じ電圧で使用されていくようにしてください。
最後にコントローラ基板のリード線を9V電池に接続して完成です!ここからはプログラムを作製し、実際にLEDやモータをうごかします。
3-3. F303K8マイコンの0Ω抵抗について
個々からは製作に関係ないコラム的な話ですが、今回予めF303K8にはんだ付けされていた0Ωのチップ抵抗を外しました。この理由についてお話します。
僕らが試作している時、ジョイスティックとIMUを併用するとジョイスティックの傾きの読み取り値がおかしくなるという問題がありました。しかし一方だけの使用の時は問題ありませんでした。
この問題を調べてみたところ、ジョイスティックに使っているピンのA4・A5と、IMUとの通信に使うD4・D5が何故か回路的に元からつながっているせいであることが分かりました。 このためIMUの信号がそのままジョイスティックの値読み取りピンまで上乗せされてしまい、ジョイスティックの値がおかしくなっていました。
この問題を解決するためにはもちろん使うピンを変えればよいのですが、そのために基板を再度発注する時間がありませんでした(なんで自分はもっと早くに気づかなかったんだっ)。そのため今ある基板を使い、この事態を回避する最後の手段として抵抗をはがしてマイコンを改造する荒療治となりました。これによりピンのつながりを物理的に切断しました。 今のところこの改造で新たな問題は発生していないですが、もしかしたら何か不測の事態が起こるかもしれません(その時はごめんなさい...orz)
別の有名どころのマイコンであるArduinoに合わせるためとの説もありますが、なぜピン同士がつながっているのか、全くの謎です...