投稿

【MFT2017】ブースへの訪問ありがとうございました

イメージ
8月5日と6日に行われた、MakerFaireTokyo2017に出展しました。 多くの方にブースを訪問していただき、ありがとうございました。 当日の展示は製作途中の試作機で、あまりぱっとしないものでしたが、励ましの言葉や、様々なアイディアを頂きました。 今後の開発に繋げていきたいと思います。

MakerFaireTokyo2017に出展(8/5、8/6)

イメージ
東京ビッグサイトで開催中のMakerFaireTokyoに出展しています。 ぜび見に来てください。  ブース E-02-12 昨日は150人以上の方に説明を聞いていただけました。ありがとうございました。

【要素技術開発】回転検知のための、ホールIC動作実験

イメージ
回転検知の要素技術開発 スピニングリールに取り付けてローターの回転を検知するセンサとして、磁気センサを選定しました。 回転を読み取るべく、実験を重ねていきたいと思います。 ホールIC ホール素子という磁気に反応する半導体があります。磁石のN極S極に反応して電気信号を取り出せるため、センサに応用できます。 しかし、電気信号が微弱なため、実際にセンサとして使うには別途、信号増幅回路などを追加しなければならず、少々面倒です。 ホール素子に必要な周辺回路などを一つのICにまとめたのが、ホールICです。電源を繋げば動作するので、とてもカンタンに使えます。 使ったホールIC EM512 部品箱にあった部品です。 部品と一緒にあったデータシートのコピーによると、 製造メーカー:旭化成電子 型番:EM512 のようです。 Googleで適当に探すと、Webでもデータシートが見つかりました。 ICの動作としては、磁極に応じて、出力がハイ・ローと変化するようです。 動作実験 内容 ホールICに電源とLEDを繋げ、磁石に反応してLEDが点滅することを確認します。 使ったICの出力は、ハイ・ローの2段階なので、LEDは点灯・消灯の動作をするはずです。 回路 回路は以下の通り。 ICの動作電圧が4.5V以上20Vまでだったので、今回は9VのACアダプターから電源を供給します。 ICの出力は、(表現が正しいか分かりませんが、)プルアップ抵抗付きのコレクタ出力になっています。データシートによると吸い込む方向に電流を15mA流せるため、LEDは図のような配線になっています。 全体の回路はブレッドボード上に組み立てます。 動作 動かしてみましょう。電源を供給しただけでは、LEDは点灯しませんでした。 今回の初期出力はハイだったようです。 今回用意した磁石は、シート上の磁石。 磁石を近づけて動かすと、見事、動作しました。 まとめ ひとまず、ブレッドボード上で、ホールIC単体の動作を確認できました。 今回使ったICは電源が4.5V以上出なければ動作しません。ボタン電池1固定程度の原電を想定した装置を目指しているので、電源が2V程度から動作する

回転数を計測するアイディア

スピニングリールにセンサを付けて、巻き取った糸の長さやキャストの回数を記録する装置を製作している リールのローターが回転したとき、外付けの回路でどうやってカウントするか?を考えたい。 読み取り方法の案 ローターに接触させて数える 回転する部分に、スイッチやロータリーエンコーダを付けて回転を読み取る方法がある。 マイクロスイッチ ローター部分に何か突起を付けて、回転するごとにスイッチを押してローターの回転を数える。 ロータリーエンコーダ ロータリーエンコーダは、本体の軸が回るとパルス信号を出すセンサである。センサ本体の軸に、リールのロータの回転を伝えてカウントする。 非接触で数える フォトインタラプタ 赤外線LEDを光らせて、反射のありなしでカウントする方法。リールのローター部に白黒の印を付けて、回転を読み取る。 ホール素子 ホール素子は磁石のS極・N極を読み取る磁気センサ。ローター部に磁石を取り付けて、回転を読み取る。 どれを選ぶか? どの方法でもリールの回転は読み取れそうである。 しかし、アングラーがリールのハンドルを巻いたとき、センサが原因の巻き抵抗があると問題である。そのため、接触式センサは不採用とする。 フォトインタラプタとホール素子を比べる。 屋外での使用を考えると、太陽の光に含まれる赤外線で、フォトインタラプタは誤動作または読み取り不能に陥る可能性がある。また、赤外線を光らせるため、電池の消耗が懸念される。 今回は磁気センサであるホール素子を利用することとする。

BlueZ5.44のbluetoothctlでコマンドが増えた

イメージ
Raspberry Pi 3 のBlueZを更新しました。 デーモンで動いているBluetoothサービスも5.44が確認できます。 また、追加で設定した実験的機能を有効するオプション -E も確認できます。 Bluetooth関連の操作コマンドbluetoothctl さて、BlueZ本体が新しくなりましたが、同梱のツール類も更新されました。 bluetoothctl というコマンドがあり、これを使ってBluetooth機器の接続など対話的に行うのですが、対話の選択肢(?)が増えていました。 bluetothctlを起動し、さらに help を打つと利用可能なコマンドが一覧出てます。 この一覧がv5.23からv5.44でかなり増えていました。 左側が更新前(v5.23)、右側が更新後(v5.44)です。 細かいことは不明ですが、大きく2種類のコマンドが追加されています。 advertise関係 10個追加 attribute関係 4個追加 その他 5個追加 また、readやwriteのコマンドが増えました。 このコマンドを使って、Bluetooth機器とパケット通信できると思われます。

Raspberry Pi 3 のbluezを更新 5.23 -> 5.44

Raspberry Pi 3 (以降、ラズパイ3)を持っているのですが、このラズパイ3はBluetooth4.1 に対応しており、BLEと通信できるらしいのです。 ◆インターネットで情報収集結果 Bluetooth関連で重要なソフトがBlueZ ラズパイ3に最初から入っているBlueZはバージョンが古いので、バージョンアップしなければならない BLE向けの機能は実験的な実装になっているようで、標準ではOFFらしい ◆現状のラズパイ3を調査 BlueZのバージョンは? ラズパイ3のイメージファイルは "2017-04-10-raspbian-jessie.img" を使っています。 上のイメージファイルで起動し、 $sudo apt-get update $sudo apt-get upgrade したあと、 $dpkg -l | grep bluez でインストール済みBlueZのバージョンを調べました。 その結果、BlueZ 5.23 でした。 ◆最新版BlueZ 2017/05/03現在の最新版のBlueZはバージョンいくつでしょうか? BlueZ(http://www.bluez.org/) によると、5.44が最新のようです。 ◆メイク&インストール この最新バージョンをインストールしたいと思います。 通常、ソフトのインストールはapt-getで行うのですが、ソースコードをビルドしてインストールします。 下のサイトを参考にしてインストールしました。 参考サイト: https://learn.adafruit.com/install-bluez-on-the-raspberry-pi/installation 概要は以下 1.BlueZをビルドするために必要なパッケージをインストール 参考サイトの通りに、6つのパッケージを導入しました。 2.BlueZのビルドとインストール ソースコードからインストール場合、だいたい、3ステップ(configurate -> make -> make install)です。 2-1. configurate ビルドやインストールの設定を行います。 予め用意されているオプションを必要に応じて選びます。

koshian を公式アプリでLチカ

イメージ
新しいマイコンを手に入れたら、まずはLEDを点滅(チカチカさせるので、Lチカと呼ぶ)させます。 Lチカさせるプログラムを作成するのですが、koshianはjavascriptでソースコードを書くそうです。マイコンのソースコードはC/C++が主流ですから、驚きです。 koshianのLチカコードがどう動くのか、公式ページの資料を元に図を書いてみました。 必要な機材は、2つ koshian(電源が供給されている) iPhone(アプリkonashi.jsがインストール済み) Lチカコードが動く様子です。 コード自体はクラウドサービス「jsdo.it」にアップロードする。 そして、iPhoneアプリのkonashi.jsから、jsdo.it上のLチカソースにアクセスし、 アプリの実行ボタンを押す。 bluetoothデバイス選択画面出てきて、koshianを選ぶ。 これだけで、Lチカ動作が始まる! アプリkonashi.jsが肝のようです。 このアプリがjavascriptを解釈し、koshianハードへアクセスする部分を隠蔽しているようです。 とはいえ、javascriptは知識が無いので、 こちらのブログ を参考させていただきました。 そして、無事、Lチカできました。 (参照したブログではPIO2をLチカするような記述ですが、ソースコードは PIO5 が点滅します。) 以上、読んでいただきありがとうございました。