692 Views
January 19, 25
スライド概要
地方在住の組み込みソフトウェアエンジニア。楽をするための努力は惜しまない。 Enjoy life! #組込み #組み込み #高知組み込み会
製品に使う マイコンの選び方(ESP32編 2025/1/17 高知組み込み会#8 千谷
千谷裕志 (Chiya Yuji) ● @banauo ● 組み込みソフトウェアエンジニア ○ ○ ○ ○ ● テストツールベンダー 家庭用医療機器メーカー 防災用計測器メーカー マテハン機器メーカー <- 2024/9~ 高知組み込み会主催 現在の勤務先→ ひたすら寒い 2
現役ファームウェアエンジニアが ESP32を製品開発に使うとき 何を基準に どう選ぶか (個人の意見です) 3
とはいえ そもそも マイコン選定の機会は多くない なぜか 4
製造業での開発業務は (ほとんど) 既存製品の改良だから (個人の意見です) 5
なぜ新しいマイコンを使えないのか ● 新しいマイコンを使おうとしたら ○ ○ 試作、評価からやるので時間かかる 量産に向けた調達もあるので時間かかる ● 「そこまでしてマイコン変える必要あんの?」 ○ ○ と言われる 新しもん好きにはツラい ● ディスコンは逆に「変えなければならない」 ○ チャンス! 6
これらの事情を乗り越えて マイコンを選ぶ時 7
マイコンの選び方を 誰かまとめていないのか 8
いた ● この記事は ○ ○ ○ 開発言語 消費電流 周辺機器 に着目 ● よくまとまってる! ● でもまだ足りない! https://note.com/susa_lab/n/n6cefb09cb6e8 9
製品開発プロセス 1. どんなものを作るか考える 2. どうやって作るか考える 3. 作る 10
1. どんなものを作るか考える ● ● ● ● 機能、性能、仕様 発売開始時期、発売期間 数量 価格 11
2. どうやって作るか考える(OS編[1] Linuxなど RTOS https://techfactory.itmedia.co.jp/tf/articles/1705/17/news004.html 12
2. どうやって作るか考える(OS編[2] https://monoist.itmedia.co.jp/mn/articles/2205/09/news037_3.html 13
2. どうやって作るか考える(周辺環境編 ● コアが既存機種と一緒ならデバッガを流用できる ○ ARMか、それ以外か ○ JTAG, OpenOCD 対応かどうか ● IDE, コンパイラが選べると嬉しい ○ ○ ○ 昔はWindows向けしか提供されてなかった 最近はMac用も提供されてる! gccか、それ以外か ● サポートにお金をかけるかどうか ○ ○ 初めて使うシリーズなら評価ボードがあるものを選ぼう ドキュメントやサンプルが充実してるものを選ぼう 14
2. どうやって作るか考える(機能編 ● 製品に必要なペリフェラルは何か ○ ○ ペリフェラルがちょっと足りない時はICで担う手もある ICで代替できない機能は優先しよう(FPU, DMA, 省電力機能など ● ROM/RAMは一番大きいものにしよう ○ ○ 大は小を兼ねる 価格はそんなに変わらない ● ROM/RAM、ピン数、動作周波数、消費電流は相関しがち ○ ○ 譲れないポイントはどれか OTAするならROMサイズが倍いるぞ 15
2. どうやって作るか考える(調達編 ● 急ぐのか ○ ○ YESなら、使い慣れてて設計資産のあるマイコン 商社の開拓からすると時間がかかる ● たくさん作るのか ○ ○ ○ ○ YESなら、できるだけ低価格なマイコン YESで急ぐなら、市場に沢山在庫のあるマイコン YESで急がなくていいなら、メーカーに大量発注しよう けれどもたくさん買ったら使い続けるはめになるぞ ● いつまで作るのか ○ ○ 供給保証されてるか NRND(新規設計非推奨)は当然避ける 16
2. どうやって作るか考える(パッケージ編 https://detail-infomation.com/package-types/ 17
3. 作る(設計編 ● RTOS使うのか ○ オープンソースでも良いがサポートが心配なら商用にしよう ● HAL(Hardware Abstraction Layer) ○ ○ マイコンメーカーがドライバを公開してるので積極的に使おう レジスタを叩くのは最後の手段 ● 困ったら ○ ○ ○ ○ 公式フォーラムで検索しよう Stackoverflow や Reddit, Github も意外と情報あったりする それよりも今は生成AIに聞いた方が早い 売れてるマイコンなら、沢山の情報がWebにある 18
3. 作る(信頼編 ● 信頼できるもの ○ ○ ○ 今まで使ってきたマイコンやコンパイラ 多くのユーザに使われた(であろう)評価ボード ちゃんとしたメーカーのオシロ、ロジアナ、プロアナ ● 信頼できないもの ○ ○ ○ ○ ○ ○ 新しく使い始めたマイコン 新しく作った基板 オープンソース 新しく書いたソフトウェア 10回程度動かしただけ 現場で動かしてないもの 19
やっとESP32 20
https://test.dfrobot.com/blog-13438.html 21
ESP32(1) ● ブロック図を眺める ● よくある機能は無視 ○ SPI, I2C, UART, PWM, Timer ● それ以外の機能に注目 ● コアが Tensilica Xtensa ○ ○ ○ なんだそれ 命令セットを作れるらしい FPGAじゃん ● WiFi+Bluetooth搭載が特徴 22
ESP32(2) ● 評価ボードの種類、市場流通量、使用実績どれも良さそう ● 供給も最低12年間保証されてる ○ が、リリースからの期間なので古いシリーズは注意 ● 圧倒的低価格 ○ MCU+WiFi+BLE では敵なしか? ● ピン数が少ないのがデメリット ● 技適非対応なモジュールを使う際には総務省に申請しよう ○ ○ 1時間くらいで申請できる(らしい https://zenn.dev/karaage0703/articles/51c89ab7d68464 23
趣味なら 好きなマイコン 使おう 24