マルチコントローラーA・マルチコントローラーUSBの中の人のつぶやき

こんにちは。マルチコントローラーA・マルチコントローラーUSBの中の人の、秋田です。(Twitter/Facebook: @akita11)
普段は大学で電子回路とかマイコンを教えたり研究したりしながら、電子工作したり、抵抗コースターつくったり、MakerFaireにいったり、NT金沢をやってます。好きな半田はPb:Sn=37:63共晶、好きなCMOSプロセスは0.35μmです。
このボードを作ろうと思ったきっかけや工夫について、ご紹介したいと思います。

  • マルチコントローラーA・マルチコントローラーUSBとは何だ?

multi

4個までのソレノイドを、スイッチで制御したり、マイコンから制御したりするためのボードです。いわゆるドライバボード(駆動回路)です。設計データと使い方は、GitHubで公開しています。
https://github.com/akita11/SolenoidController

  • なぜ作ろうと思ったのか?

学生さんが演習や研究で電子工作をするのを見ていると、最近はLEDやセンサなどはすごく簡単に使えて、あまり苦労することはありません。でもモータやソレノイドのような、電流が多く流れる負荷をマイコンから使おうとすると、途端に敷居があがります。具体的には負荷に流れる電流という概念、マイコンのI/Oポートの電流駆動能力、トランジスタやMOSFETとその回路、誘導性負荷のサージ吸収(フライホイール・ダイオード)など、電子回路に関する知識が途端に必要となり、電子工作初心者にとっては一気にハードルがあがってしまいます。もちろん順番に教えていくのですが、多くの人は途中で心が折れてしまいます。「オレはArduinoから、このソレノイドをちょんちょんしたいだけなんだ!」という叫びを、これまで何度も聞いてきました。もちろん電子回路を勉強するいい機会ではあるのですが、あまりに必要知識が多くて、ゴールにたどり着く前に息絶えてしまうのです。これは、ソレノイドがもつ面白さ、可能性が十分に生かし切れていない、もったいない状態だと考えるようになりました。
そこで、Arduinoをはじめ、各種マイコンにつないで、簡単にソレノイドを制御(ちょんちょん)できるようなボードを設計したいと思うようになりました。

  • 設計のポイント

マイコンと一口にいっても、流儀(宗派?)がいろいろあって、使いたいマイコンは人それぞれです。そこで、比較的使っている人が多いと思われる、以下のマイコンにターゲットをしぼり、これらで使えるように設計しました。
・Arduino(互換機も含む)
・Raspberry Pi
・Ichigo Jam
・micro:bit
・Grove(Seeed.ccが策定している、各種マイコンをつなぐコネクタ規格)
もちろんボード単体でも使えるように、タクトスイッチを備え、それを押してソレノイドをちょんちょんすることもできます。これらのマイコンをつなぐための端子を1枚のボードにすべて備えるよう、かなり配置には苦労しました。意外とタクトスイッチが邪魔でしたが、使わない端子を削除したりして、なんとか収まりました。

またソレノイドを使う上で意外と厄介なのが電源問題です。マイコンでは電源電圧は5Vや3.3Vが主流です。しかしソレノイドは、磁界と巻線抵抗の関係から、最低でも6V、標準は12Vのものが一般的です。つまりマイコンと電源を共用できないのです。そして6Vや12Vの電源が、電子工作初心者にとってはそれほど身近ではないのも事実です。そこでボードの設計にあたっては、電源には以下のいずれかを接続できるようにしました。
・ 乾電池(電池ケースからスクリュー端子に接続)
・ ACアダプタ(一般的なφ2.1プラグをつなぐ端子。このACアダプタは秋月電子の電子部品ショップでなどで入手できます)
・ (オプションで、最近注目されつつある、USB Type-C PD規格のACアダプタやモバイルバッテリも接続できるよう、基板パターンだけは用意してあります)
またタカハでは別途、5Vで駆動できるソレノイドを開発中とのことでしたので、5V電源を供給するためのmicroUSBコネクタもおきました。ただし2個並列にしてありますが、2台の電源を並列に接続するのは好ましくないので、原則として行わないでください。

回路図はこんな感じです。基本的に、ソレノイドをnMOSトランジスタで駆動しています。nMOSトランジスタのゲート端子にマイコンからの5Vまたは3.3Vが印加されたときにONとなるようにしています。またタクトスイッチを押してもONにできるようにしてあります。ここで注意したのは、タカハのソレノイドには駆動電圧が24Vのものがあるという点です。タクトスイッチ経由ではソレノイド駆動電圧がゲート端子につながりますが、一般的にnMOSトランジスタのゲート印加電圧(VGS)の最大値は15V程度です。そのためソレノイド駆動電圧の24Vを直接ゲートに加えることはできません。そこでR1とR20などの抵抗ペアで分圧して、ゲート電圧としています。ただしマイコンからの制御電圧は、保護抵抗のR5などを通して印加されていますので、ゲート電圧はこれとR1との分圧となります。つまりR1が小さすぎると、マイコンからの制御電圧ではゲート電圧が閾値VTHを越えず、nMOSトランジスタが(十分に)ONになりません。つまりR1とR20とR5には、相互に関係する条件があり、これを満たすように設定したのが、回路図の抵抗値です。

ちなみにオプションとして、USB Type-C PDでソレノイド電源(12V設定)を供給することもできます。このIP2716というICはAliexpressなどで入手できます。USB TypeCコネクタのはんだ付けがけっこう厄介(ハンダマスクとリフロー必須)ですが、興味のある方はぜひチャレンジしてみてください。いずれ、タカハからの製品ラインアップに加えてほしいと思います。

ご質問、ご意見はこちらまでどうぞ!
→akita@ifdl.jp / @akita11 (Twitter/Facebook)

1件の返信

  1. ワタナベ より:

    こんにちは。

    タカハ機工株式会社のマルチコントローラーUSB SB-6565-03を最近購入したものです。
    こちらのウェブサイト(https://www.48v.me/~08takuya/solenoidcontroller.html
    )にあるとおりにRaspberry Pi(モデル3B、3A)につないで、プログラムを実行してみたのですが、なぜかpin1とpin2の2つしかソレノイドを制御できません。

    タクトスイッチを押せば、pin3とpin4ともにソレノイドが動作はしますので、どこかに問題があるとは思うのですが、解決方法が見つかりません。(LEDはpin1とpin2は点灯した状態、pin3とpin4はタクトスイッチを押すと点灯します。制御基板の電源は5Vのスマホ充電用のアダプターを使用しています。)

    お手数をおかけして、大変申し訳ありませんが、解決方法を教えていただけたら、助かります。
    よろしくお願いいたします。

コメントを残す

メールアドレスが公開されることはありません。