gr-kurumiで簡単電子工作 -...
TRANSCRIPT
GR-KURUMIで簡単電子工作
MAENOH!
前野秀史
ルネサスナイト10@豊洲フォレシア
2016.12.17
ロボットPLEN2とは…
(A)身長約20cmの人型ロボット(B)オープンソース(Arduino互換)(C)プリンタブル(3Dデータ公開)(D)スマホやPCから制御可能(BLE,USB)
c
GR-KURUMIの特長(A)Pro-mini互換のミニサイズ(B)音声再生(WAVP)(C)時計機能(RTC)(D)オンチップ温度センサー→ おっ、できるぞ!
目標GR-KURUMIでPLEN2を
コミュニケーションロボットに…
・常時ON・音声再生用スピーカー
→胸の電池BOXから電池を取り外しACアダプター駆動に変更。これにより、GR-KURUMIとスピーカーのスペースを確保。
コミュニケーションロボット化
胸のBoxはFusion360でデザイン変更
スピーカー用に・スピーカー穴追加・厚みを増加
オリジナル v.s. 改造版
基板表
アンプ
GR-KURUMI
加速度センサーmicroSDリモコン受信
基板裏
BLE(RN4020)
3.3V
レギュレーター
PLEN2との接続はBLE
#define RN4020_WAKE_SW 4#define RN4020_CMD 6void setup(){
Serial.begin(2400); // for RN4020pinMode(RN4020_WAKE_SW, OUTPUT);digitalWrite(RN4020_WAKE_SW,1);pinMode(RN4020_CMD, OUTPUT);digitalWrite(RN4020_CMD,0);delay(100);digitalWrite(RN4020_CMD,1);delay(500);Serial.println("E,0,000780A411C0"); // connect to PLEN
}
今回はRN4020を使用
BLEのデバッグRN4020制御は2400baudが都合がいい(ディープスリープ可能)
要望:Kurumi WriterのSerial Monitorで2400baudをサポートしてほしい!
void PLEN_PM(int pm_num) {char num_char;//readout_XX(pm_num); delay(500);Serial.print("CHW,001F,"); // PLEN CONTROLSerial.print('$',16);Serial.print('P',16); // PLAYSerial.print('M',16); // MOTIONnum_char = (pm_num/10)+'0';Serial.print(num_char,16); // 1ST CHARnum_char = (pm_num%10)+'0';
Serial.println(num_char,16); // 2ND CHAR}
PLEN2にBLEでコマンドを送るだけでこいつ・・・動くぞ!
$PMxxxxはモーション番号
(16進2桁)
手のサーボを追加
・アクリルをレーザーカットし熱で曲げ加工・SG90サーボを内蔵・サーボ制御はGR-KURUMI
c
できること
・赤外線リモコンでPLEN2を操作・音声時計/温度計・音声再生「だっこして~」・音声&モーション(同時)・ミュージック再生・手のサーボ動作・傾きに反応した音声やモーション
電子工作とロボット工作を楽しもう!