初めてのPICで弾速計を作成【前編】
測るものが必要
コイルガンを作るにしても、その性能を計測出来なければ話にならず、まずは弾速計を作ることが必要となってくる。
電源は自作ではなく、安価で高性能なモノをAmazonで購入したので、今度こそ自作していきたいところ。
弾速計も、Webで調べると幾人かの人たちがPICで自作しているHPがあるので参考にさせてもらう。youtubeでもたくさん載ってるしね。
で、やはり、気づいちゃったわけです・・・。
BB弾などのサバゲー用のもので、安いものだと5,000円くらい。
自作キットであれば4,000円で買えちゃうんだね・・・・。
だが、ここは敢えてDIYの道を征く!
いつまでも、既製品や、簡易キットに頼っていては実力が付かない!
と言うことで、PICの初工作物として弾速計を第一目標とする。
まずは、書籍購入
色々なHPでPICの扱い方は書いてあるが、やはり手元に置いていつでも参考にできるバイブルで包括的に知識を取得できるのは書籍が一番という持論に基づき、書籍を選択。
丸善などの巨大な本屋で立ち読みを繰り返し、良さそうな本をチョイス。
PICと言っても、その種類はものすごくあって、DAコンバーターやらコンパレーターやらようわからん機能がついていたり、無かったり。はっきり言ってどれを選んでよいのかわからない。
なので選ぶ本は、弾速計だから情報を表示できる液晶なんかあるといいなぁ~。そしてその基本設計や、基本プログラミング法まで書いてあるなどの条件に合致していた。
落とし穴に気づく
早速、書籍を手に入れて読み進めていくわけだが、どうも違和感に気づく。
- 使用している石(マイコンチップのこと)はPIC12F683
- 開発環境を整えていくにあたり、MPLABなるソフトをインストールする必要がある。(Microsoftで言うところの、VisualStudioのようなもの)
- 標準で搭載されているコンパイラはXC8というもの。
- 先の紹介した書籍ではHI-TECH Cコンパイラと言うものを使っているが、現在は買収されXC8に統合されている。
- 書籍の出版時期からして、コンパイラのバージョンが数段上がっていて、おそらく記載されているままでは使えない。(読み込むヘッダーからして違う)
こう言った事案は、Webの方がフットワークが軽いので調べてみると、非常に参考になるHPが見つかったので参照させてもらう。
ここで紹介されているソースコードは、XC8コンパイラの前進のXC7で書かれていて、しかも同じ液晶パネルを題材としていた!
ありがたや、ありがたや・・・・。
ただし、使用している石はPIC12F1822
あと、これも、後から気が付いたんだが、MPLABに標準でついているXC8コンパイラ使用環境では、下に紹介した本の方が実は詳しく載っている。
特徴と言うか、僕の感想としては
- 書籍の価格が高い。
- ものすごく細かく丁寧にしかも専門的に書かれているので取っつきにくい。
- ハード的な設計については、前述した8ピンPIC~の本の方が参考になる。
- 8ピンPIC~の本を片手にHPなども参考にしながら、弾速計を完成させた時点で気が付いた僕には、既に必要ない感じもする。
何も知らない時点から気合を入れて買うのならいいかもしれないが、僕ならもう一度勉強しなおすとしても、8ピンPICの方をお勧めする。
だたし、HI-TECH CとXC8の違いがあるので、その辺を自分なりに解釈、アレンジしていく必要がある。
今思うと、それもいい勉強になったとも言えるけど・・・。
必要な部材を買い集める
そんなこんなでPICについてある程度見聞が深まったところで、とりあえず必要なものはプログラムをコンパイルした実行データを書き込むPICライター。
正規版は、ちょっとお高めなので、OEM?っぽいものを購入。
動作は今のところ、全く問題ないのでこれで十分。
使い方はジャンパーを弄ったり、電源の設定が必要だが次回詳しく書いて行く予定。
ついでにブレッドボードと言って、ハンダを使わず試作できるボードが付いてくるので重宝する。
あとは、秋月電子でお買い物~~♪
PICや、センサー関係も各種購入。
一つ一つは30円~数百円なので余分に買っておく。
- PIC12F683(書籍で使用している石)
- PIC12F1822(参照したHPで使用している石)
- I2C接続小型LCDモジュール
- 弾速計に必要な光学センサー類
最低限必要なものはこんなところ。
秋月電子などのパーツショップでも知識を吸収
話の流れとして書くタイミングが無かったので最後になってしまったが、
パーツを探していると同じような性能で何種類ものパーツが出てくる。
そこで、参考にするのがデータシート!
ほとんどが英語だが、わかる範囲でいいのでデータを読んでいく。
最大電圧や、定格電流、時には性能曲線のグラフでパーツの特徴が見えてくるので非常に勉強になる。
これは、設計で回路を作っていく時に非常に参考になる数値なので、その時必要なパーツだけでもいいのでチラチラ見ておくと、後々自分の判断材料として使えるようになる。
これだと言うパーツが見つかったら、お気に入り登録して、コメント欄にどう言った用途で使う予定かなどを記述しておくと、より捗る。
記事が長くなったので、続く
次回は、トラブル続きの『Hello World』編
あ、雲の上のお方とか、突っ込み、アドバイスなんかあったらお願いします。