マグボットの電源を入れるとマグボットがループで繰り返し話し続けるアプリ
Mugbot Repeaterです。
マグボットで最も使用されているアプリです。お店、受付、展示説明に最適です。
コンセントや、スピーカーの電源をいれて、スピーカーのボリュームを変えるだけで使用できます。
一度プログラムすれば、ロボットにあまり詳しくない方でも使用できます。
また、Raspberry Pi内部で動くので制御用のPCやスマホを必要としません。
Rubyで書いてあります。
このファイルのファイル名をmugbot-repeater-0.1.rbとして
/home/piに置いて実行権限を与えて
1 |
chmod +x mugbot-repeater-0.1.rb |
/etc/rc.local
のファイルの最後に
1 |
ruby /home/pi/mugbot-repeater-0.1.rb & |
を
exit 0
の前に書いて再起動すると勝手に話し始めます。
プログラム中の
sleep 2
は発話と発話の間隔時間で2秒にしてあります。秒数はこの数字を変えてください。
最後の
sleep 10
は一通り発話して、もう一度最初の発話を繰り返すまでの時間です。
プログラムでは10秒になっていますが、秒数はこの数字を変えてください。
すでにmugbot-server-1.1.rbが動いている場合は、/etc/rc.local
で自動起動しないようにコメントアウトしてください。
1 |
# ruby /home/pi/mugbot-server-1.1.rb & |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
#! /usr/bin/ruby # -*- coding: utf-8 -*- #Mugbot Project Tokyo City University Koike Lab. 2016.06 #Mugbot System ver. 1.1 require 'serialport' #シリアルポート設定 port = "/dev/ttyACM0" #/dev/ttyACM0はRaspberry Piから見たArduinoのポート sp = SerialPort.new(port, 9600, 8, 1, SerialPort::NONE) loop do #loopによる無限ループ sp.putc "t" # tをArduinoに送って口のLEDを点滅開始 system(`/home/pi/mugbot-talk-1.1.sh "私はマグボットです。"`) #Open Jtalkによる発話 sp.putc "n" # nをArduinoに送って口のLEDを点滅終了 sleep 2 #2秒 遅延 sp.putc "t" system(`/home/pi/mugbot-talk-1.1.sh "東京都市大学小池研究室で生まれました。"`) sp.putc "n" sleep 2 #2秒 遅延 sp.putc "t" system(`/home/pi/mugbot-talk-1.1.sh "私の体は百円ショップの部品でできています。"`) sp.putc "n" sleep 10 #10秒 遅延 end |