obnizをGeek Servo サーボと連携してLEGO テクニック歯車を動かしたメモ
obnizをGeek Servo サーボと連携してLEGO テクニック歯車を動かしたメモです。
obnizをGeek Servo モーターと連携してLEGO テクニック歯車を動かしたメモのもう一つ Geek Servo サーボ型の方も動かしてみました。

Geek Servo サーボ型は灰色です。

Geek Servo モーター型と同様、このようなピンヘッダでobnizに橋渡しをします。

このようにつなぎます。

obnizのServoMotorを参考に、このように差し込みました。
- 茶色ケーブル
- 0番ピン
- 赤色ケーブル
- 1番ピン
- オレンジケーブル
- 2番ピン
ソースコード
ソースコードはこちらです。サーボのソースは特に苦労することなくつなげられました。
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="/css/starter-sample.css">
<script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>
<script src="https://unpkg.com/obniz@2.4.0/obniz.js" crossorigin="anonymous"></script>
</head>
<body>
<div id="obniz-debug"></div>
<div class="wrap">
<div class="led">
<h3 class="text-center">Turning on a Geek Servo</h3>
<button class="btn btn-primary" id="on">ON</button>
<button class="btn btn-outline-primary" id="off">OFF</button>
</div>
</div>
<script>
var obniz = new Obniz("OBNIZ_ID_HERE");
obniz.onconnect = async function () {
obniz.display.clear();
obniz.display.print("Hello World");
var servo = obniz.wired("ServoMotor", {gnd:0,vcc:1,signal:2});
servo.angle(90.0);
$('#on').click(function () {
servo.angle(60.0);
obniz.display.clear();
obniz.display.print("60 degree");
});
$('#off').click(function () {
servo.angle(120.0);
obniz.display.clear();
obniz.display.print("120 degree");
});
};
</script>
</body>
</html>
動かしてみる

まずは動作確認。
無事動きました!
さらにLEGOと連携してみる

やはり、軸受けにLEGOのテクニックパーツがぴったり刺さるのが魅力。

家にあったもので、横スライドに力の方向を変更する仕組みをつくりました。
こちらもうまく力が伝わり、棒を押し出す動きに変換できました!