投稿

4月, 2024の投稿を表示しています

Inkscapeで実体配線図

イメージ
2024-05-04 Update :EIC102及びEIC801のファイルを更新,部品は別ファイルに移行 実体配線図の作成に Fritzing を使われている人も多いと思います.むしろ,Fritzing一択のような雰囲気があります.ですが,私自身はFritzingが登場する以前から EazyDraw で実体配線図を作成していました(例えば, BD4066 の 実体配線図 ).ドローツールを Inkscape に移行してからは,実体配線図の作成もInkscapeに移行しました. Fritzingが主流の現在需要はほとんどないと思いますが,EIC-801(新タイプのE-CALL 165401020E ),EIC-102,秋月電子B基板の2倍スケールのInkscapeファイルと5%級1/4Wカーボン抵抗と1%級1/4W金皮抵抗(それぞれE24系列1Ω〜9.1MΩ)の2倍スケールInkscapeファイル及び主要部品の2倍スケールInkscapeを こちらで公開 します. 提供するInkscapeファイルのライセンスは CC BY-NC-SA 4.0 または文化庁 自由利用マーク「学校教育OK」 です.授業の過程で使用する場合,論文原稿やプレゼンテーション,報告書,レポート等利用形態によりライセンスの表示が適当でない場合については,それらのドキュメントでのライセンス表示は不要とします. EIC-801,ブレッドボード用部品,カーボン抵抗及び部品配置サンプルの画像を以下に示します: 部品ファイルに配置しているマイコンボードは 秋月電子のRP2040ボード です(これも2倍スケール). ブレッドボードはロックしたレイヤー1に配置してあり, 部品は部品ファイルからコピーして レイヤー2に配置 します .ブレッドボードの向きを逆にしたい時は,レイヤー1のロックを外してブレッドボードを2回90度回転し,改めてレイヤー1をロックします.抵抗は自分で作成せずとも,抵抗のInkscapeファイルから該当のものをコピーしてペーストすればOKです.グリッドはインチピッチで設定してあり,各部品はインチピッチの見えない長方形で囲われています.400%程度にズームしておけば正確に配置可能ですし,それでもうまく配置できない場合は直接図形左上の座標値をインチピッチで指定します. レイヤー2にはブレッドボ

秋月電子のRP2040マイコンボードでCircuitPython

イメージ
秋月電子通商 はオリジナルのマイコンボードを各種製造販売していますが, Raspberry PiのRP2040を用いたマイコンボード (以下,AE-RP2040)もあります.本家の Raspberry Pi Pico (以下,Pico)はC/C++,MicroPythonまたは CircuitPython でプログラミングできるのですが,AE-RP2040がCircuitPythonで動かせるかどうかは情報があまりなかったので,自分で試してみることにしました. CircuitPythonのPicoのページ から.UF2ファイルをダウンロードします. AE-RP2040のBOOTボタンを押し,そのままの状態でPCと接続します.無事接続できるとPC上に“RPI-RP2”というドライブが出現します.RPI-RP2がPCに認識されたらBOOTボタンから手を離してOKです. ダウンロードした.UF2ファイル(adafruit-circuitpython-raspberry_pi_pico-〇〇-△.□.×.uf2)をRPI-RP2にドラッグ&ドロップします:本記事執筆時点のCircuitPythonは9.0.4 しばらくしてRPI-RP2が消え“CIRCUITPY”というドライブが出現したら,CircuitPythonのインストールは成功です. もしうまくインストールができない場合や,使用中のCIRCUITPYドライブの挙動がおかしくインストールし直しをしたい場合は, こちらのページ にある“flush_nuke.uf2”をダウンロードしてAE-RP2040に書き込み(BOOTボタンを押しながらPCに接続して,RPI-RP2ドライブにDrag&Drop)消去してからCircuitPythonの.uf2ファイルを再インストールします. ThonnyのREPLからboardモジュールのピンを調べてみると次のようになりました: >>> import board >>> dir(board) ['__class__', '__name__', 'A0', 'A1', 'A2', 'A3', 'GP0', 'GP1'

Robo Figure Skating

イメージ
  県教委主催の高校生を対象としたプログラミング講座を夏休みに担当させていただいていますが,今年の開催に備えてロボットの回路と基板の設計変更をやっています. プログラミングのお題はオリジナル競技の“ Robo Figure Skating ”.上の写真に示す2輪走行ロボットを使い,フィギュアスケートのような3分間の走行演技をしてください,というものです.リンクの広さは3.6m×2.7m,6畳間と同じです.走行だけでなく,NeoPixelを使った光の演技も可能です. ハードウェアは毎年変更になっていて,マイコンボードは昨年からSeeed XIAO RP2040になり,今年は慣性計測装置(IMU)がSTマイクロのLSM6DS3TR-C(加速度+ジャイロ)に変更になります.上の写真は昨年度のバージョンで,XIAO RP2040 + Bosch BNO055(加速度+ジャイロ+磁気)です. 回路図は↑.モータドライバのTB6612はモータ電源とロジック電源が内部で分離されているのですが,SAMD21/51やRP2040はモータが回転し始めるとリセット(おそらくブラウンアウトリセット)がかかってしまうというトラブルに遭遇しましたので,フォトカプラで完全絶縁をしています.micro:bitのときはそういうことはなかったのですが... オプションで超音波距離センサ( 3Vで動作できるタイプのHC-SR04 1 )を接続できるようにしてあり,中学校技術の教科書にあるお掃除ロボットの走行も可能です. 基板パターンはこんな感じです↓ IMUを基板中心に置き,それがRFSロボットの車軸中心上に来るようにしています.またXIAO RP2040は中心軸から少し左に寄せていますが,これはNeoPixelが中心軸に来るようにするためです. 1 データシートによるとGPIO方式での動作時はR4とR5がNCになっていてそれがデフォルトなのだけど,秋月電子の写真ではどちらも何某かの抵抗が接続されている.そんな動作モードはないんだけどなぁ...