ハードウェアを触ったことのない Web エンジニアが Raspberry Pi Zero W で初めての開発を行った際の悲喜こもごもをお話をします。
先日行われたリタリコ社のワンダーメイクフェスにて、来場されたお子様たちにプロダクト開発の楽しさを体験してもらおうという目的で作った制作物のお話です。
Unity の 3D 空間上で走っている電車とプラレールの走行を同期させて一律でコントロールできるようにし、お子さんがその場で作った 3D オブジェクトを 3D 空間にリアルタイムに追加していけるプロダクトを目指して開発しました。
(お子様の体験としてはこちらのプロダクトと近いかもしれません: https://www.team-lab.com/sketchaquarium )
ワンダーメイクフェス: https://wonder.litalico.jp/event/fes/
14. Raspberry Pi Zero W
● 1GHz, Single-core CPU
● 512MB RAM
● Mini HDMI and USB On-The-Go ports
● Micro USB power
● HAT-compatible 40-pin header
● Composite video and reset headers
● CSI camera connector
● 802.11n wireless LAN
● Bluetooth 4.0
15. 今回使った箇所
● 1GHz, Single-core CPU
● 512MB RAM
● Mini HDMI and USB On-The-Go ports
● Micro USB power
● HAT-compatible 40-pin header
● Composite video and reset headers
● CSI camera connector
● 802.11n wireless LAN
● Bluetooth 4.0
16. Python
● Websocket 通信
● モーター制御
上記2点にだけ使いました
import time
from websocket import create_connection
ws =
create_connection("ws://192.168.1.10:9999/")
While True:
ws.send("Hello, World")
time.sleep(1)
result = ws.recv()
print("Received '%s'" % result)
time.sleep(1)
ws.close()
from websocket_server import WebsocketServer
def new_client(client, server):
server.send_message_to_all("Hey all, a
new client has joined us")
def send_msg_allclient(client,
server,message):
server.send_message_to_all("Hey
all:"+message)
server = WebsocketServer(9999,
host='192.168.1.10')
server.set_fn_new_client(new_client)
server.set_fn_message_received(send_msg_allcl
ient)
server.run_forever()