CHIRIMEN Servo (task.js version)
![](/uploads/figure/content/6141/medium_IMG_2406.jpg)
Owner & Collaborators
License
![](/assets/cc/by-sa-454bec73964a2260e07e0d78ce1087be57985dcccbc92af87db9c2cebfaf86f9.png)
CHIRIMEN Servo (task.js version) by ChirimenEdu is licensed under the Creative Commons - Attribution-ShareAlike license.
Summary
task.jsを使用してCHIRIMENでサーボモータを扱う方法。
PCA9685というサーボドライバを使います。
PCA9685というサーボドライバを使います。
![](/assets/icons/share-20ae092651324b0ed71e6f35153c99f57ae05ade83f9b3579ad7c26e922e7b52.png)
Materials
Tools
Blueprints
Making
- GROVE - 4ピン-ジャンパメスケーブルの黒、赤、黄色、白色のケーブルをそれぞれPCA9685のGND,VCC,SCL,SDAに刺してください。
- 普通のジャンパワイヤ(オス~メス)でPCA9685のVCC,V+を接続してください。
- サーボモーターをch0に接続してください。
- CHIRIMENでサーボモータを制御する方法 を参考にソースコードを準備してください。
- task.js、webgpio polyfillを使用するので準備してください。
- WoTsignageアプリと同様に準備すれば大丈夫です。
- サンプルプログラムについて解説する。
- I2Cポートの初期化
- サーボドライバの初期化処理
- サーボモータの制御
- サーボモーターを制御するための処理はPCA9685クラスにまとめてあります。
- 初期化したI2Cポートオブジェクトとサーボドライバ(PCA9685)のアドレス(0x40)を指定して、pca9685クラスをnew呼び出しして、さらにサーボドライバの初期化処理を記述します。
- 引数に指定している数値(0.00050,0.00240,180)はサーボモータ毎に異なる設定値です。SG90というサーボモータを使用する場合は、この通りに記述します。
- サーボモータの制御は制御するサーボモータのチャンネル(今回は0を指定)と、角度(angle変数で指定)を指定して、サーボモータの制御処理のように記述します。
- 以下の記述は10度と170度を交互に設定する処理です。
- 正しく動作すれば、サーボモータが1秒毎に10度、170度の角度に動きます。
References
Usages
Project comments
![](/assets/loading-76d3480d6cfbd92ac2e356aacdd74ad155c7516f783d3e4af81bb94bf32bb69f.gif)
Comments