> はじめにはじめに
ここでは回路設計の例としてサーボ基板の設計手順を紹介します。
> 最初にすること最初にすること
まずは入出力の仕様を決めましょう。今回は以下の通りとします。
- 5Vサーボ x4
- 24V入力
- CAN通信 x1
- UART通信 x1
- ロータリースイッチ x1 (CANIDの設定用)
- LED (各電源と状態表示用)
次に上記の要件を満たすことができるマイコンを選びます。今回はSTM32F303k8を選びました。
> 構成図構成図
仕様が決まったので、構成図を書いてみます。マイコンから入出力を生やし、各ICに電源を配線します。今回は以下のように設計しました。赤線が電源、黒線が信号の通り道です。
サーボモータのノイズの混入を防ぐため、サーボとマイコンの電源のDCDCコンバータは別々にしました。またSTM32F303k8でCAN通信をする場合、マイコンと通信線の間にCANトランシーバというICを挟む必要があります。
> 回路設計回路設計
> マイコンの配置マイコンの配置
構成図に沿ってKiCADで回路を作っていきます。
マイコンを配置します。右端のオペアンプマークをクリックし、「STM32F303k8」で検索、候補をクリックしてOKを押すと、マイコンの回路図シンボルが出てきます。適当な場所でクリックすると、シンボルが配置されます。
> 電源シンボルの配置電源シンボルの配置
電源のシンボルを配置します。右端のアースマークをクリックして、「GND」「3V3」で検索、以下のように電源シンボルを配置します。
> 配線配線
電源シンボルとマイコンを配線します。全てのVDD端子を3.3Vに、VSS端子をGNDに接続します。
端子をクリックすると配線ツールが出てくるので、目標位置までマウスを動かし、クリックして配線を繋げます。
配線途中で適当な場所でクリックするとその地点で配線を直角に曲げることができます。
シンボルはクリックしてドラッグすれば移動できます。余計な配線はクリックしてdeleteで消せます。
画面全体の移動はマウスホイール押下でドラッグ、画面の拡大縮小はマウスホイールでできます。
> パスコンの配置パスコンの配置
マイコンの各VDD端子にバイパス・コンデンサを配置します。バイパス・コンデンサは、ICの電源を安定させるために入れるコンデンサで、通常0.1uFのセラミックコンデンサが使われます。
オペアンプマークをクリックし、cと検索、cをクリックして配置します。
配置したシンボルは1回クリックしてMを押すと移動でき、Rを押すと回転、Yを押すと鏡像反転ができます。
今回はVDDが2端子あるため、図のように2個配置します。
配置したCをダブルクリックするとプロパティが出てきます。ここでValueの欄に0.1uと入力しましょう。
> 水晶発振子の配置水晶発振子の配置
マイコンにはクロック源となる水晶発振子の配線が必要です。以下のように、PF0とPF1の端子に水晶発振子と発振用のコンデンサを繋げます。今回は水晶は8MHz、コンデンサは22pFとします。水晶発振子は「crystal」で検索すると出てきます。
> 配線ラベルの配置配線ラベルの配置
次にマイコンに配線ラベルをつけていきます。配線ラベルを使うことで回路図を見やすくすることができます。
右端の「A」が枠で囲まれたラベルのマークをクリックして、配線ラベルを配置します。信号の向きに合わせて、入力・出力・双方向を設定します。
マイコンのデータシートにあるピン機能表を見ながら、サーボやCAN、UARTなどの各種配線を割り当てていきます。
今回は下図のように割り当てました。
使わない端子には右端の×マークから未使用フラグを付けておきます。
> リセット端子等の処理リセット端子等の処理
boot0端子、NRST端子に抵抗を繋ぎます。抵抗は「R」で検索すると配置できます。
boot0はフラッシュメモリ起動を使うのでプルダウン、NRSTは負論理で非リセット状態を選ぶのでプルアップします。
またNRST端子にはリセットスイッチを付けておきましょう。押しボタンスイッチは「SW_Push」です。
ここまで配線すると下のようになります。
> コネクタと周辺部品の配置コネクタと周辺部品の配置
マイコン周りが大体できたので、コネクタの配置に移ります。
構成図を見ながら必要なコネクタをどんどん追加します。コネクタは「conn_0nx0m」(n, mはピン数) で配置できます。
今回は他の基板と互換性を持たせたいので、ピン数やピン配置を他の基板と揃えて以下のようにしました。
LEDとロータリースイッチを追加します。LEDは「LED」、ロータリースイッチは「SW_Coded_SH-7010」を配置します。
LEDには電流制限抵抗を、ロータリースイッチにはプルダウン抵抗を忘れないようにしましょう。
ここではLEDは表示用なので数mA流れるように1kΩと470Ω、プルダウン抵抗には10kΩを選定しました。
> CANトランシーバの配置CANトランシーバの配置
次はCAN通信に使うCANトランシーバを配置します。今回は電源や通信速度などの条件を満たす「MCP2562」を選定しました。「MCP2562-E-P」を選択して配置します。
MCP2562のデータシートで各ピンの機能を確認しながら、各ピンに配線を繋げます。電源となるピンには忘れずにパスコンを繋ぎましょう。
今回は以下のように接続します。
> 電源回路の配置電源回路の配置
> 制御電源の設計制御電源の設計
電源回路を設計していきます。まずは制御に使う電源を用意します。
24Vから5Vに降圧するのは電圧差が大きいので効率の良いDCDCコンバータを使用します。
今回は500mAもあれば足りるので、秋月電子の「R-78E5.0-0.5」を使用します。
検索欄に品番を打ち込み、シンボルを配置します。電源シンボルを繋いで以下のようにします。
5Vから3.3Vに降圧するのは電圧差が小さく今回は電流値も低いのでリニアレギュレータを使います。
今回は秋月電子の「LM1117」を使用します。品番を打ち込み、3.3V版のシンボルを配置します。
ここでデータシートを参照し、「TYPICAL APPLICATION CIRCUITS」の欄を見ます。10uFのパスコンが入出力に繋がれています。これは発振防止のコンデンサで、必要なものなので回路図のように入れておきましょう。
> シンボルの作成シンボルの作成
次にサーボモータの電源を用意します。24Vから5V3Aほどを確保したいので、DCDCコンバータを使います。
これほどの電流値だと自作しても良いのですが、めんどくさいので今回は既製品を使います。今回は秋月電子の「KIC-053」を採用します。
シンボルがKiCADにないので、自作します。上の方のシンボル作成ボタンをクリックして、シンボルエディタを立ち上げます。
ファイル→新規ライブラリを選択し、名前を付けてライブラリを保存します。今回は「DCDC」という名前を付けました。
ライブラリ「DCDC」を選択し、ファイル→新規シンボルを選択、KIC-053と名前を入力しOKします。
シンボルの型が作成されました。
右端のピン追加ツールをクリックし、データシートを見ながらピンを追加していきます。
全ピンを配置できたら、右端の矩形マークをクリックして、シンボルの枠を描きます。
枠の上で右クリックして、プロパティを選択、「ボディ背景色で塗りつぶし」を選択するとシンボルに色がついて見やすくなります。
保存したら、シンボルエディタを閉じます。
> サーボ電源の設計サーボ電源の設計
元の画面に戻ったら、オペアンプマークをクリックし「KIC-053」と検索します。先程作成したシンボルがあるはずなので、配置します。
KIC-053のデータシートを見ながら、必要な外付け部品を配置します。
> パワー・フラグの配置パワー・フラグの配置
パワー・フラグと呼ばれる特殊なシンボルを大元の電源が来る箇所の電源シンボルに接続します。これは後述のERCでエラーを避けるためのものなので、ERCを無視する場合はつけなくても良いです。
PWR_FLAGで検索し、シンボルを配置します。
> アノテーションアノテーション
アノテーションボタン(図の赤丸)をクリックし、アノテーションを押して部品番号を振ります。
> ERCERC
アノテーションボタン右隣のERCボタンをクリックし、ERC(Electrical Rule Check)を実行します。
回路に異常がないかを確認してくれます。
DCDCコンバータの出力同士が短絡している、と怒られてしまいました。今回は同じ出力をデータシート通りに繋いだだけなので、無視して大丈夫です。マーカーを削除を押して、終了します。
回路設計はこれで終了です。お疲れ様でした。
続いて基板設計に移ります。サーボ基板の設計 (KiCADの使い方・基板編)を参照してください。