Bluetooth 4.0 BLE接続について

ロボット側にBLEモジュールが付いて、今回はBLEモジュールが付く情報連絡端末が、Bluetoothを介してロボットの動きをリモート監視、制御を行います。
全体のシステム構成としては、ロボット(BLE)~(BLE)情報連絡端末(WiFi)~WiFiアクセスポイント~(ether)クラウドサーバ(ether)~WiFiアクセスポイント~(WiFi)ブラウザまたはスマホアプリの形となります。

1、アクセス方式:SPPシリアル

2、プロトコール GATT、SDK化したのは、NOBLE(セントラル)/BLENO(ペリフェラル)、Node.js、Andriodなどいくつかのバージョンが用意されている。これでメソッドと、イベントをきちんとおさえれば、MVC開発の感覚で開発が進められる。作者に感謝&御礼。
https://github.com/sandeepmistry/
http://yegang.hatenablog.com/entry/2014/08/09/195246
https://www.safaribooksonline.com/library/view/getting-started-with/9781491900550/ch04.html

3、役割分担、情報連絡端末はCentral(セントラル)、ロボットはPeripheral(ペリフェラル)、ペリフェラルは外部設備、端末の意味合いと思って良い。携帯無線、WiFiとは真反対にして、ペリフェラルはアドバタイズメントを出して、自分の存在を一所懸命を周りに知らせる。セントラルが近くにあれば、ペリフェラルの存在を知り、必要であれば接続する。

4、サーバ/クライアント
セントラル/ペリフェラルとはイコールではない、サービス提供者の立場から、セントラルはサーバでも可能だし、クライアントでも可能だ。ペリフェラルも同様。

5、いくつかのキーワード
Serviceサービス(キャラクタリスティクスのコンテナ)、Characteristicsキャラクタリスティクス(送受信データのコンテナー)、UUID(サービス、キャラクタリスティクスを区分するための識別子)、writeキャラクタリスティクスvalue書き込み、readキャラクタリスティクスvalue読み込み、Notification知らせ(Subscribe登録しておけば、キャラクタリスティクスvalue変更の際、相手に知らせる)、Subscribe登録など。

6、開発手順
gatttoolツールで、GATTで定義したサービス、キャラクタリスティクスをよく確認して、それからNode.jsでプログラムを綴る。

モノづくり試作、研究開発に提案する、ロボット翔-電子部品ストア、センサ、Arduino互換ボード、拡張シールド、Bluetooth/Zigbee/WiFi/RFIDモジュール、ロボット制御ボード、ドローンが品揃えています。どうぞご利用下さい

Raspberry Pi B+にPython 3.5.1インストール

1、DebianとPythonの既存バージョン確認

# cat /etc/debian_version
Debian 7.6
# python -V
Python 2.7.3

2、ベースのアップグレード、約2時間かかりました。

# apt-get update
# apt-get upgrade -y</code>
# apt-get dist-upgrade</code>
# apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev zlib1g-dev libsqlite3-dev tk-dev libssl-dev openssl libbz2-dev libreadline-dev

3、pyenvのインストール

# git clone https://github.com/yyuu/pyenv.git ~/.pyenv
# echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.profile
# echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.profile
# echo 'eval "$(pyenv init -)"' >> ~/.profile
# source ~/.profile

4、Python 3.5.1のインストール、約1時間かかりました。

# pyenv install 3.5.1

5、Python 3.5.1へ切り替え、旧バージョンもそのまま

# python -V
Python 2.7.3
# pyenv globle 3.5.1
# Python -V
Python 3.5.1

以上。

 

 

モノづくり試作、研究開発に提案する、ロボット翔-電子部品ストア、センサ、Arduino互換ボード、拡張シールド、Bluetooth/Zigbee/WiFi/RFIDモジュール、ロボット制御ボード、ドローンが品揃えています。どうぞご利用下さい

Raspberry Pi B+のBLuetooth BLE接続について

bluetoothctl というコマンドで制御することができるのでその方法を紹介します。

0、環境:Raspberry Pi B+:Debian 7.6、Raspberryに挿すBluetooth USBドングル:ELECOM LBT-UAN05C2、通信相手:BLE付きセンサ

1、bluez 5.33ダウンロード

#curl -L -o bluez-5.33.tar.gz https://www.kernel.org/pub/linux/bluetooth/bluez-5.33.tar.gz
#tar zxvf bluez-5.33.tar.gz
# cd bluez-5.33

2、必要なライブラリーインストール

# apt-get install libusb-dev libdbus-1-dev libglib2.0-dev automake libudev-dev libical-dev libreadline-dev
# make
# make install

3、シンボリックリンク

# ln -svf /usr/libexec/bluetooth/bluetoothd /usr/sbin

4、Bluez コンフィグファイルコピー

# install -v -dm755 /etc/bluetooth
# install -v -m644 src/main.conf /etc/bluetooth/main.conf

5、ドキュメント類インストール

# install -v -dm755 /usr/share/doc/bluez-5.33
# install -v -m644 doc/*.txt /usr/share/doc/bluez-5.33

6、ツールコピー

# install -v -m644 test/* /usr/local/bin

7、bluetoothd起動

# /usr/sbin/bluetoothd &

8、bluetoothデバイスON

# hciconfig hci0 up

9、いよいよbluetoothctlコンソール

# bluetoothctl -a

10、コンソールに切り替え、相手スキャン

[bluetooth]# scan on

11、相手に接続

[bluetooth]# connect xx:xx:xx:xx:xx:xx

12、今度も自動認識

[bluetooth]# trust xx:xx:xx:xx:xx:xx

13、bluetoothデバイス自動ON

#nano /etc/udev/rules.d/10-local.rules

以下追加

ACTION=="add", KERNEL=="hci0", RUN+="/usr/bin/hciconfig hci0 up"

14、bluetoothd自動起動

#nano /etc/rc.local

以下exit 0の上に追加

/usr/sbin/bluetoothd &

これで再起動しても自動で通信相手が接続されるようになります。

以上。次は、node.jsで通信を制御、送受信を行います。

モノづくり試作、研究開発に提案する、ロボット翔-電子部品ストア、センサ、Arduino互換ボード、拡張シールド、Bluetooth/Zigbee/WiFi/RFIDモジュール、ロボット制御ボード、ドローンが品揃えています。どうぞご利用下さい

広州電気メーカZLG社視察

H28年9月上旬、広州電気メーカZLG社を訪問してきました。本社&工場は広州市天河区の繁華街に近く地下鉄駅に至近な工業団地にあります。高速鉄道広州南駅、白雲国際空港から、地下鉄でのアクセスは便利です。北京、上海、南京など国内主要都市に支社を構えています。今回は生産&工場を統括する副社長と、営業担当の方が訪問に応じて案内してくれました。

ZLG社概要

1999年設立。1000人規模、内エンジニア400人程度。主な製品は、オシロスコープ、電力アナライザなどの計測器、ARM/X86製品、CAN-bus製品、通信モジュール、ゲートウェイなどIoT関連製品、総計500種類以上があります。開発、設計、試作、生産まで一貫したモノづくり企業です。本社R&D面積17000平米。チップメーカのNXP社の世界最大のエージェントです。ISO9000、ISO14000、ISO18000取得済み。中国国内のみならず、ヨーロッパにも進出しています。

ZLG社本社ビル、フロント

ZLG社本社ビル
ZLG社本社ビル

ZLG社本社フロント
ZLG社本社フロント

R&D(一部)


ZLG社R&D(一部)
ZLG社R&D(一部)

ZLG社R&D(一部)
ZLG社R&D(一部)

工場(一部)


ZLG社工場(一部)
ZLG社工場(一部)

ZLG社工場(一部)
ZLG社工場(一部)

工場検査(一部)
工場検査(一部)

ZLG社ウェブサイト(英文)

以上

モノづくり試作、研究開発に提案する、ロボット翔-電子部品ストア、センサ、Arduino互換ボード、拡張シールド、Bluetooth/Zigbee/WiFi/RFIDモジュール、ロボット制御ボード、ドローンが品揃えています。どうぞご利用下さい

趣味電子工作、ものづくり試作に提案する ロボット翔:電子部品ストア

ロボット翔は、ロボットキット、ドローン、Arduino互換ボード、拡張シールド、センサーモジュール、Zigbee通信モジュールなどの電子部品を、電子工作の学習や、モノづくりの試作に提案いたします。

モノづくり試作、研究開発に提案する、ロボット翔-電子部品ストア、センサ、Arduino互換ボード、拡張シールド、Bluetooth/Zigbee/WiFi/RFIDモジュール、ロボット制御ボード、ドローンが品揃えています。どうぞご利用下さい