マイクロロボの使うマイコン変えてみることにした。
今年は特に低消費電流を狙ってATtiny1614で攻めて?みてた。
去年より小さく軽くなった。 去年はなかったライントレースモードも追加。
無線通信は赤外線でM5Stack、スタックチャンと中継通信して、
BLEでスマホと通信してラジコンで操縦にしてた。
ソフトはちょこちょこ変更する、ハードもちょこちょこ変わる。
ATtiny・・・M5Stack ・・・スマホ 管理が思いのほか大変だった。
というより管理で来てなかった。組み合わせが???になることしょっちゅう。
また思った以上に赤外線、小さいチップで感知角広げたモノだと感度が低い。
テレビリモコンにみたいにけっこう向きでたらめでもいけるの期待したけど
いまいちだった。
やたら指向性が効いちゃってるというか赤外線LEDと受信モジュールの
向きをかなり気を使わないといけなかった。
距離も思ったより離せないし。
で、ATtiny、モータの駆動能力が思った以上に弱かった。
20mAがやっとな感じ。
ESP32は40mAとか言っても、突入電流はもっと流せてた。
行儀のいい使い方じゃないけど。
こちらは去年作ったマイクロロボ ESP32版
MOUSERコンテストでも優秀賞頂いた♪
マイコンは必要以上に高性能・・・
こんなんでもWiFiサーバーになっちゃうし。
BLE使える範囲で80MHzまでクロック落としたりしてもそこそこ
大電流消費だった・・・フツー?の電子工作からすると小さい方だけど。
ってことで・・・
マイコンを次のマイクロロボでは変えてみようと思う。
やっぱし無線はほしいので今度はBLE使えて、小さいマイコン...
Nordicの nRF52832 にしてみようかと思う。
Raytacが 小さいモジュール MDBT42V とか出してる。
最初の写真のやつ。
サイズはATtiny1614と同じくらい。
ポートの数はずっと多い。ATtinyより配線、ハンダ付けは気を遣うけど
0.4mmピッチのVQFNほどではない。。。
次期型 #マイクロロボ マイコン変更 その2
— しん (@shinichi_nin) 2024年10月6日
#nRF52832 の #MDBT42V
#BLE 使えて 小さい♪ #技適 マークついてる♪
サイズは #ATtiny1614 とほぼ同じ
低消費電流で #ATtiny 使ってきたけど
やっぱし、無線通信、
赤外線では 何かと手間が掛かりすぎ ...
#Arduino #Nordic #Raytac pic.twitter.com/rIcUfj1mQc
ブレッドボードでテストする準備 動かないようにちょっと接着剤でつける。
書込み線はこの辺に配置。
書込み線と、Lチカ用のポート1本引き出して配線
配線は 5本だけ 電源、書込みのクロック&データ線、Lチカ用のLEDポート
GND : 1
VDD : 20
CLK : 2
DIO : 4
P16(LED):6
拡大するとこんな感じ
◆書き込み器
ST-LINKが使えます。 1円玉に乗ったATtinyくんは飾り
ST-Linkのドライバは
http://www.st.com/ja/development-tools/stsw-link009.html
このページから STSW-LINK009 をダウンロード、インストールです。
(会員登録が必要です)dpinst_amd64.exe を実行します。
◆nRFボードのインストール
- ArduinoIDEで「ファイル」メニューより「環境設定」を開き、「追加のボードマネージャのURL」に
「 https://sandeepmistry.github.io/arduino-nRF5/package_nRF5_boards_index.json 」を追加する。 - ArduinoIDEで「ツール」メニューより「ボード:"Arduino Uno"(選択されているボードは異なる場合あり)」に進み
「ボードマネージャー」を開く - 「Nordic Semiconductor nRF5 Boards」のボードをインストールする。(今回はv0.8.0をインストールしました)
- ボード一覧に「Nordic Semiconductor nRF5 Boards」が追加されるので、その中の「Generic nRF52」を選ぶ
Arduino nRF Boards は入れてない。
◆SoftDeviceの準備 ArduinoIDEツールメニューに書き込みメニューの作成
nRFではBLEはソフトで実装されるので。
Arduinoスケッチフォルダにtools/nRF5FlashSoftDevice/tool/
を作り、nRF5FlashSoftDevice.jarを置きます。
-
https://github.com/sandeepmistry/arduino-nRF5/releases/download/tools/nRF5FlashSoftDevice.jar
をダウンロードする。 -
C:\Users\ユーザー名\Documents\Arduino フォルダ内に、tools\nRF5FlashSoftDevice\tool フォルダを作ります。
-
ダウンロードしたjarファイルを、
C:\Users\ユーザー名\Documents\Arduino\tools\nRF5FlashSoftDevice\tool\nRF5FlashSoftDevice.jar
の場所にコピーします -
ArduinoIDEを再起動します。
★ここで、書込もうとしてもArduinoIDEからは対象のhexファイルはダウンロードできずエラーになる。
◆SoftDevice.hexの準備 手作業で。
ArduinoIDE内からだとDLできないらしいので。。。手動でやります。
ブラウザでエラー内のURL(https://www.nordicsemi.com/-/media/Software-and-other-downloads/SoftDevices/S132/s132nrf52201.zip )にアクセスし、手動ダウンロードします。
- ダウンロードしたzipを解凍し、「s132_nrf52_2.0.1_softdevice.hex」を
C:\Users\ユーザー名\AppData\Local\Arduino15\packages\sandeepmistry\hardware\nRF5\0.8.0\cores\nRF5\SDK\components\softdevice\s132\hex
フォルダにコピーします。 - 再度、「nRF5 Flash SoftDevice」を選択します。「Error while flashing SoftDevice.」というエラーが出ますが、まだデバイスをつないでいないためなので、問題ない。
こちら参考にさせて頂きました。
ArduinoIDEのツール設定はこんな感じ
定番・・・のLチカのスケッチです
コンパイル時間、ATtinyよりはずっと時間掛かるけど、ESP32よりはずっと早い。
定番・・・の Lチカです
次期型 #マイクロロボ マイコン変更 その5
— しん (@shinichi_nin) 2024年10月6日
#nRF52832 の #MDBT42V
ブレッドボードでお試し
定番の・・・ #Lチカ できた♪
#ATtinyくん は飾りです
消費電流ゼロ... うそです。
10mA以下なんで測れないだけです...
#Arduino #Nordic #Raytac #BLE pic.twitter.com/9KglUkxdc0