Files
- 404 File Not Found
- 404 File Not Found
- Not Found
- Invalid object requested. SHA must identify a commit or a tree.
-
hardware / components / breakout / GPS / GPS.kicad_pcb
-
hardware / components / breakout / GPS / GPS.kicad_sch
-
hardware / components / breakout / IMU / IMU.kicad_pcb
-
hardware / components / breakout / IMU / IMU.kicad_sch
-
hardware / components / breakout / LiPo_MCP73871 / MCP73871.kicad_pcb
-
hardware / components / breakout / LiPo_MCP73871 / MCP73871.kicad_sch
-
hardware / components / breakout / TWELITE / TWELITE.kicad_pcb
-
hardware / components / breakout / TWELITE / TWELITE.kicad_sch
-
hardware / components / ESP32Camera / ESP32Camera.kicad_pcb
-
hardware / components / ESP32Camera / ESP32Camera.kicad_sch
-
hardware / components / ESP32Core / ESP32Core.kicad_pcb
-
hardware / components / ESP32Core / ESP32Core.kicad_sch
-
hardware / components / LCD / LCD.kicad_pcb
-
hardware / components / LCD / LCD.kicad_sch
-
hardware / components / LiPoPower / LiPoPower.kicad_pcb
-
hardware / components / LiPoPower / LiPoPower.kicad_sch
-
hardware / components / LiPoPower / LiPoPowerSimple.kicad_pcb
-
hardware / components / LiPoPower / LiPoPowerSimple.kicad_sch
-
hardware / components / Logger / Logger.kicad_pcb
-
hardware / components / Logger / Logger.kicad_sch
-
hardware / components / LoRa / LoRa.kicad_pcb
-
hardware / components / LoRa / LoRa.kicad_sch
-
hardware / components / matsunaga / WOBC_無線点火装置 / WOBC_無線点火装置.kicad_pcb
-
hardware / components / matsunaga / WOBC_無線点火装置 / WOBC_無線点火装置.kicad_sch
-
hardware / components / ModuleIF / ModuleIF.kicad_pcb
-
hardware / components / ModuleIF / ModuleIF.kicad_sch
-
hardware / components / ModuleIF / ModuleIFSimple.kicad_pcb
-
hardware / components / ModuleIF / ModuleIFSimple.kicad_sch
-
hardware / components / ModuleIF / ModuleIFStack.kicad_sch
-
hardware / components / ModuleIF / ModuleIFSimpleStack / ModuleIFSimpleStack.kicad_pcb
-
hardware / components / ModuleIF / ModuleIFSimpleStack / ModuleIFSimpleStack.kicad_sch
-
hardware / components / panelize / 202311 / 202311.kicad_pcb
-
hardware / components / panelize / 202311 / 202311.kicad_sch
-
hardware / components / RP2040Core / RP2040Core.kicad_pcb
-
hardware / components / RP2040Core / RP2040Core.kicad_sch
-
hardware / components / SLAM / SLAM.kicad_pcb
-
hardware / components / SLAM / SLAM.kicad_sch
-
hardware / modules / GS / GS.kicad_pcb
-
hardware / modules / GS / GS.kicad_sch
-
hardware / modules / RockoonBus / RockoonBus.kicad_pcb
-
hardware / modules / RockoonBus / RockoonBus.kicad_sch
Last update 1 month 5 days
Filesdocs | |
---|---|
.. | |
image | |
.gitkeep | |
components.md | |
develop.md | |
kicad.md |
develop.md開発環境
回路・基板設計
- KiCAD
プログラム製作・書き込み・デバッグ
- Platform IO
ソフトウェアスタック
- Arduino
- FreeRTOS
製作
基板はプリント基板製造サービスを,はんだ付けは(特に表面実装部品は)部品実装(PCBA)サービスを利用することを推奨する. ここでは,プリント基板製造および部品購入・実装にJLCPCBを利用する場合について解説する.
コンポーネントの開発
作りたいユニットが既存のコンポーネントの組み合わせだけでは求める機能を得られない場合, 新規にコンポーネントを開発することになる.コンポーネントの開発は以下のような流れとなる.
概念設計
必要な機能を再利用可能な最小単位に分割し,それぞれをコンポーネントとする. コンポーネントに求められる機能や性能要求,何を入出力とするか整理し,必要な部品の検討をつける.
作るコンポーネントが決定したら,コンポーネント名およびIDを決定して (コンポーネント一覧)[docs/components]に記載する.
コンポーネント名の付け方は以下の通り.
- 英数字のみを使う.日本語は使わない.
- 大文字から始まるキャメルケースを使う.
- コンポーネントの機能を表す適切な抽象度合いの名前にする.部品名や型番のように具体的すぎる名前や,反対に抽象的すぎて内容が想像しづらい名前は避ける.(例:
E220
→具体的すぎる,Communication
→抽象的すぎる,LoRa
→適切)
部品選定
概念設計で決めた機能や性能を有する電子部品を探す.
PCBAサービスを利用できること,小型,低価格,流通量の多さといった理由から,表面実装部品を主に用いるとよい. 表面実装部品はJLCPCBの部品ライブラリから, 手で実装するスルーホール部品などは秋月,千石,Digikey,Switch Science などから探す.
この際,できる限り以下のような点を満たすものから選ぶとよい.
- データシートに記された定格が,性能要求を余裕をもって満たすもの
- 安く入手性が良い(在庫が多い)もの
- JLCPCB Partsの中では,Basic Part または Preffered Part(手数料がかからない)であるもの
- 表面実装部品なら,ブレッドボードで試作するためにDIP版またはブレークアウト基板,開発キット等が入手できるもの
- 製造元のHPや販売サイト,あるいは個人のブログなどを調べることで使用方法がよくわかるもの
- Arduinoのライブラリが存在し,すぐ使えるもの
- 他コンポーネントですでに使われており共通のもの
回路設計
部品を探すと同時に,回路設計を始める. 部品のデータシートにある応用回路例や,ネット上の製作例を参考に設計するとよい.
具体的には(KiCADマニュアル)[docs/kicad.md]を参照.
試作
部品や回路が想定通り動くか,ブレッドボードを用いて試作し,回路を設計する. 同時にプログラム製作も進めるとよい.