投稿

5月, 2017の投稿を表示しています

【要素技術開発】回転検知のための、ホール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 が点滅します。) 以上、読んでいただきありがとうございました。

koshianの火入れ

イメージ
Bluetooth Smart対応マイコンkoshianに電源を入れて、動作確認したいと思います。 個人的に、電源を入れる際、注意している点があります。 「プラスとマイナスは正しくつながっているか?」 これを間違えると、特別に対策されている場合を除き、ICは回復できない故障を起こします。 慎重に配線して(コネクタを挿しただけですが)電源を入れます。 煙が上がったりしなかったので、やれやれ、一安心。 しかし、パイロットランプなどは付けていないので、動作しているかどうか、視覚的には判断できません。 公式ページにあるスマホアプリで、動いているか確認します。 konashi inspector  (iOSのみ) koshianは、konashiという製品の姉妹品(?)のようでkonashi対応のアプリで動作するそうです。 画面のコネクトボタンを押すと、 どうやら、つながっているようです。とりあえず、動いて良かったです。 とても地味な動作確認にお付き合いいただき、ありがとうございました。

koshian をピッチ変換する

イメージ
リールに付けるセンサで、手持ちの部品箱をあさっていたら、いい物が出てきました。 koshian ( 公式サイト ) Bluetooth Smart ( Wikipedia )対応マイコンモジュールです。 このモジュール、大きさが1cm×2cmくらいしかなく、小さなデバイスに最適ですね。 買ったときから既に何かファームウェアが書き込まれているので、リール側のソフト開発は大きく省略できるでしょう。 このモジュールは小さい反面、端子パッドが1.27mm間隔なので、このままでは試作用のブレッドボードに挿せません。 まずはブレッドボードに刺さるように、ピッチ変換します。 koshianモジュールを載せる土台はこんなカンジです。 モジュールの端子数は20本です。 それに合わせて、片面の紙フェノール・ユニバーサル基板を適当な大きさに切りました。 さらに1列のピンヘッダを10ピン2本をハンダ付けしました。 今度は、koshianモジュールと土台を繋ぐ配線をしていきます。 まず、モジュールの各端子にポリウレタン線(直径0.3mm)を半田付けし、5cm程度に切ります。 どんどん生やしていきます。 このモジュールは基板の半分がマイコン、もう片方に端子が集中しています。 全部終わりました。 ショートしていないか、目で確認しました。 特に、問題なさそうです。 土台とモジュールを厚手の両面テープでくっつけます。 両面テープは厚みが1mm程度あるもの使っており、絶縁にも一役買っています。 土台の端子とモジュールの端子を半田付けしていきます。 端子と端子のショートに気をつけながら作業します。 できあがりはこんな感じ。 真横に着きだしている端子5本は、プログラム書き換えようですが今回は使わないでしょう。一応、すべての端子を利用できるように引き出しておきました。 ブレッドボードに挿すとこんな感じ。 動作確認はまた別の記事にします。 ここまで読んでいただき、ありがとうございました。

リールにセンサを付けたい

「魚釣りを楽しくしよう」の第一弾として、リールにセンサを付けて、色々データ収集してみようと思います。 収集したい情報は以下のよう 巻いた糸の長さ キャスティング回数 気温 etc まずはこの程度の項目を収集する装置を作っていきたいと思います。 巻いた糸の長さとキャスティング回数の積で、「今日は何キロ投げた」とかを思い出にできる装置にしたい。

ブログ始めました

初めまして、かつたです。 アウトドアが趣味で特にフィッシングをしています。 また、以前は電子工作をよくしていました。 このブログでは、電子工作やプログラミングで魚釣りを楽しくすることを目指します。 まずは、最近はやっているIoT関連で、ワイヤレス通信を使った何かを作っていこうかと思っています。 それではよろしくお願いします。