既に仕事始めは通り過ぎているのですが、やっと冬休みの宿題が終わりました。
前回までのあらすじ
キーボード用キースイッチのフォースカーブ測定機を作りたくなったので、先駆者の記事を参考にしてなんとなく構造を理解したので、さっそく手を動かしていくぞ、となったところ。
今回やったこと
前回の記事の時点では電子はかりを作ろうと思ったのですが、まずは電子工作界のHello Worldである「Lチカ*1」をやってみることにしました。
用意したもの
- ラズパイ関係
- Raspberry Pi本体
- 今回は自宅のガジェット箱に眠っていた3Bですが、なるべく最新版を手配した方が資料は見つけやすいと思います
- microSDカード
- 最低8GBの容量が必要らしい。とりあえず16GBでやってる。
- ACアダプタ
- スイッチサイエンスのこれを買いました
- キーボード
- 最初は有線の方がよさそう
- マウス
- モニタとHDMIケーブル
- 厳密には用意したというより使いまわしている
- Raspberry Pi本体
- Lチカ関係
- ブレッドボード
- ジャンパワイヤのオス-オスとオス-メス 2本ずつ
- 抵抗(1kΩ)
- LED
ラズパイのセットアップ
まずはこの記事を参考にRaspberry Pi Imagerを手元のWindows機にインストール。microSDカードにOSイメージを書き込みます。
イメージャをインストールすれば、ダウンロードにちょっと時間がかかったくらいですんなり。
古い記事を読むと日本語対応とかBluetoothキーボードの認識とかがややこしかったようなのですが、特別なパッケージを入れるまでもなくすんなりいきました。ありがたい。
とりあえずLピカ
Lチカする前にLピカ*2を試してみる。
セットアップが出来ていればこんな感じの配線でいける。
この時点ではシンプルに+は3.3Vのピン、マイナスはGNDのピンから取る。
Rubyのインストール
基本はこの記事を参考にしました。バージョンは3.0.3にしたけど3.1系でもよかったかも。
rbenv install
する前にlibssl-devをインストールしておかないとダメだったのでやっておく。
sudo apt-get install -y libssl-dev
コマンドラインでLチカしてみる
この記事の「コマンドラインからLED点灯」のあたりを参考にやってみた。
まずは配線をこんな感じに修正。+を3.3VではなくGPIO 22ピンに変更しておく。
どのピンがどんな役割なのかは以下を参照。
# GPIOの22番ピンを使う $ echo 22 > /sys/class/gpio/export # /sys/class/gpio/gpio22 にピン操作のためのファイルが作られるので操作していく # 22番ピンを出力に設定する $ echo out > /sys/class/gpio/gpio22/direction # LED点灯 $ echo 1 > /sys/class/gpio/gpio22/value # LED消灯 $ echo 0 > /sys/class/gpio/gpio22/value # 22番ピンの使用を終了する $ echo 22 > /sys/class/gpio/unexport
Rubyのコードを書いてLチカしてみる
引き続きこの記事を参考にする。「RubyスクリプトでLチカ」のあたり。
参考っていうか、ほぼ写経。
RubyからGPIOのピン操作をするにはpi_piper
というgemが必要なのでインストールして、ピンのON/OFFを1秒ごとに繰り返していく感じ。
実行してみるとこんな感じになる。動画だとかなり見づらいので抵抗もうちょっと低いやつでもよかったかも…
RubyでLチカできたー pic.twitter.com/ZkQdUKifU2
— あのぶる+@リングフィット中の🦥㌠ (@thatblue_plus) 2022年1月10日
次回予告
改めてロードセルの取り扱い練習として、電子はかりを作る予定。