近距離無線規格である「Bluetooth」の低消費電力規格。Bluetooth Low Energy。 コイン電池やボタン電池、環境発電などを使用し、非常に少ない電力で駆動する。 2010年7月に発表した「Bluetooth 4.0」から実装。カシオの腕時計「G-SHOCK」などにも搭載されている。
Bluetooth Low Energy: The Developer's Handbook
[カシオ] 腕時計 ジーショック スマートフォンリンクモデル GB-5600B-1JF ブラック
子ども向けのレクチャーとしてmicro:bitを使用していますが、IoT系のハッカソンなどでは、複雑になってくるとmicro:bitからRaspberryPiへの変更を余儀なくされることもあります。ただ、micro:bitは電池駆動ができることで、身につけるものにもつけられるといった利点もあり、なんとか活かせないかなと思っていました。ESP32でもいいのですが…、メンバーにエンジニアがいないというときには難易度が上がるのが問題です。 そこで、今回はWeb Bluetoothを使用してmicro:bitとシリアル通信を行い、micro:bitのセンサーや機能をを用いるといったことができないかを実…
Windows11 22H2あたりからLEオーディオ対応!みたいな記事がはやし立てる物の一向に実際に使える兆しが見えなくてやきもきしていた人も多いかと思う。 IntelのこのプロセッサならみたいなCPUプラットフォームの触れ込みもあったがやはりわからず、そんな中、最近PCを新調してみたら設定にLEオーディオのオプションが表示されているではないか。 使用可能な場合は LEオーディオ を使用する というスイッチですね。 いろいろ調べてみたところ、デバイスマネージャーで下記表示があればIntelプラットフォームでLE Audio対応していると思われる。 店頭のPCを触ってみて、必須と思われる条件はC…
Bluetooth Low Energy(BLE)とBluetoothは、名前こそ似ていますが、実は異なる技術です。このブログでは、BLEとBluetoothの違いに焦点を当て、両者の共通点や特徴について深堀りしてみましょう。 (function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a; b[a]=b[a]||function(){arguments.currentScript=c.currentScript ||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)}; c…
前回の記事の続きで、今度はスマートフォン側でプラレールの速度制御ができるアプリを作っていきます。 以前AE-TYBLE16のBLE接続用にAndroidのUnityプラグインを作成しましたが、普段使いがiPhoneなので今度はiPhone用のプラグインも書いてアプリに組み込んでみます。 Objective-C側の処理はこちらのサイトを参考にさせていただきました。 Core Bluetooth with Swift (ObjCのおまけ付き) - Qiita 開発環境 Mac Book 12.1 Unity 2020.3.24f1 Xcode 13.2.1 iPhone8 14.8.1 各種環境を…
前回の記事では、新メカ構造のプラレールを単三電池1本でBLE制御により動作することを確認しました。 今度はブレッドボード上の回路を基板にはんだづけして、車両内に全ての部品を収めてみようと思います。 回路とコードは今回も変更ありません。 車体改造 ダイオードはモーターに直接接続し、モーターのプラス側とマイナス側、切り離し済みの電池のマイナス側にそれぞれリード線を取り付けます。 各リード線の反対側には基板と接続するためのピンソケットを取り付けます。 モーター部分のカバーからピンソケットが見えるようにピンバイスを使って穴を開けます。 基板組み込み 基板部分は車両内部に収まるように小型に整える必要があ…
前回の記事で乾電池1本でBLE通信とモーターの制御ができるようになりました。 いよいよプラレール本体に乗せて動かしてみたいと思います。 過去に試したArduinoでプラレールをうごかしてみる(ESP32版)はこちら 回路とコードは前回のまま変更はありません。 プラレール選定 左が新メカで右が旧メカ プラレールの動力部分は2014年ごろから新メカに移行したようで、前輪付近にモーターを配置した単三電池1本の動力になっています。 旧メカは前輪部分の空間が広いので、単4電池2本が入ったり、基板も色々詰め込むことができそうです。 一方新メカはスペースが限られていますが、動力部分がはんだ付けされていないの…
前回の記事で乾電池駆動の回路ができたので基板実装を試したのですが、配線が複雑で時間がかかってしまい、はんだごての酸化もあってAE-TYBLE16とATTiny85を破損させてしまいました。 メンテナンスを試したもののはんだのノリがあまり良くならなかったため、急遽新しいはんだごてを注文しています。 先に乾電池1本化に挑戦するために購入したMOSFETが届いたので、回路の簡略化のためにも乗り換えをしてみようと思います。 開発環境 Mac Book (10.13.6) Arduino IDE (1.8.13) 機材一覧 ATTiny85 太陽誘電 小型BLEモジュール基板 (AE-TYBLE16) …
前回の記事でようやくBLEモジュールのAE-TYBLE16経由で、DCモーターを制御できるようになりました。 今回は電源供給を乾電池のみに切り替えて、動作するように変更してみたいと思います。 プログラムは前回のままで、回路のみ変更になります。 機材一覧 ATTiny85 太陽誘電 小型BLEモジュール基板 (AE-TYBLE16) TC78H653FTGモータドライバモジュール DCモーター 3.3V出力昇圧DCDCコンバーター その他 ブレッドボード、ジャンパワイヤ、電池ボックスなど 回路作成 乾電池2本から昇圧コンバータを使って3.3Vに昇圧して供給するように変更しています。 動作テスト …
前回の記事でATTiny85の周波数を校正したことで、アプリから受信した値をBLEモジュールのAE-TYBLE16とのシリアル通信によって正しく取得できるようになりました。 今回はその受信した値を使って、モータードライバのTC78H653FTGを制御し、実際にDCモーターを動かしてみようと思います。 開発環境 Mac Book (10.13.6) Arduino IDE (1.8.13) 機材一覧 ATTiny85 太陽誘電 小型BLEモジュール基板 (AE-TYBLE16) TC78H653FTGモータドライバモジュール DCモーター ESP-WROOM-32D開発ボード ※3.3V電源とし…
前回の記事はATTiny85とAE-TYBLE16を使ってシリアル通信を試してみました。 通信はできたものの、時々データが破損して文字化けする問題がありました。 調べて見たところ周波数の校正をすることで改善できるようなので、試してみたいと思います。 環境と回路は前回の記事のままなので省略します。 校正値確認 ATTiny85は内蔵されるRC発振器によって8MHzとかの周波数を発生させているようです。 このRC発振器というのは温度によって、ATTiny85では10%まで誤差が生じるとのことで、OSCCALという校正用レジスタを調整することである程度調整が可能になるみたいです。 出荷時に予め校正値…