obniz를 사용한 IoT 로봇 암(obniz-ARMS)

18265 단어 obnizIoT

개요



obniz를 사용하여 원격지에서 로봇 팔을 조작 할 수있는 메커니즘을 구축했습니다.

obniz + MeARM = IoT Robot ARM! #obniz

소재



· #IoT

오픈 소스의 소형 로봇 암. 스스로 레이저 커터로 꺼내기에는 힘들므로 잘라낸 염가 목제 타입의 것을 구입

・서보 모터(SG90*4)

· obniz



조립



1. 팔 조립



이런 키트를 조립해 갑니다.

#robot

피 c. 라고 r. 이 m/j319응 b8에 cG



2. obniz에 연결



2018년 10월 4일

・3케이블*4서보=12개라면 모두 묻혀 버리기 때문에, GND는 브레드보드 경유로 공유화

· 왠지 핀 0에 연결하면 MeARM이 나오기 때문에 핀 1에서 사용 (원인은 미확인)



3. 코딩




obnizARMS.thml

<!-- HTML Example -->
<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>
  <script src="https://unpkg.com/[email protected]/obniz.js"></script>
</head>
<body>

<div id="obniz-debug"></div>
<h3>前後</h3>
<input id="slider" type="range"  min="45" max="70" value="60"/>

  <h3>上下</h3>
<input id="slider1" type="range"  min="30" max="90" value="45" />
  <h3>土台</h3>
<input id="slider2" type="range"  min="0" max="90" value="0" />
  <h3></h3>
<input id="slider3" type="range"  min="0" max="180" value="80" />
  <br>

  <button id="on">ON</button>
  <button id="off">OFF</button>

<script>
var obniz = new Obniz("OBNIZ_ID_HERE");
obniz.onconnect = async function () {
    var servo = obniz.wired("ServoMotor", {gnd:1, vcc:2, signal:3});
      var servo1 = obniz.wired("ServoMotor", {gnd:1, vcc:4, signal:5});
      var servo2 = obniz.wired("ServoMotor", {gnd:1, vcc:6, signal:7}); 
        var servo3 = obniz.wired("ServoMotor", {gnd:1, vcc:8, signal:9}); 

          $("#on").on("click",function(){
      servo.angle(5.0); // for testing

      });
      $("#off").on("click",function(){
      servo.angle(0.0); // for testing
    });


  $("#slider").on('input', function() {
    servo.angle($("#slider").val())
  });
  $("#slider1").on('input', function() {
    servo1.angle($("#slider1").val())
  });
  $("#slider2").on('input', function() {
    servo2.angle($("#slider2").val())
  });
    $("#slider3").on('input', function() {
    servo3.angle($("#slider3").val())
  });
};

obniz.onclose = async function(){
   $("#slider").off('input');
};
obniz.onclose = async function(){
   $("#slider1").off('input');
};
 obniz.onclose = async function(){
   $("#slider2").off('input');
};
  obniz.onclose = async function(){
   $("#slider3").off('input');
};
</script>
</body>
</html>




■ 조작 화면



4. 감상



로봇 암의 가동역이 한정되어 있기 때문에 실제로는 서보의 MIN/MAX의 조정 등이 상당히 힘들었습니다. 최고의 조정 방법을 찾아 가고 싶습니다.


좋은 웹페이지 즐겨찾기