Contact Us            Careers

About Us               Blog

FAQ                       Partners

Request for Demo/PD

  • Facebook Social Icon
  • Google Places Social Icon
  • Instagram Social Icon
  • Twitter Social Icon
  • YouTube Social  Icon

© 2019 Barobo, Inc.

Archive

Please reload

Tags

Please reload

[Project] Control a Dog-Like Creature with Linkbot

October 27, 2018

 

Introduction:

Each Linkbot is a building block. Multiple Linkbots and accessories can be easily snapped together, without special tools, to form various Linkbot systems for different tasks and projects.  In this project, 2 Linkbot-I, 1 Linkbot-L, Cube Connectors, and other accessories are used to form a dog-like creature. The project demonstrates that Linkbot can be used as a building block in a complex Linkbot system.

 

(Project Description and Program in PDF File)

 

Information:

Grades: 6 – 12

Duration: 1-4 Hours

Level: Intermediate

 

Parts Used in the Project:

2 Linkbot-I

1 Linkbot-L (used for a mouth, you can replace it by Linkbot-I)

1 Linkbot Dongle (or another Linkbot as Dongle)

2 4” wheels

11 Cube Connectors

1 Gripper Pair

4 Bridge Connectors

1 Ball Caster

23 Snap Connectors
 

Setup:

Joint 3 of robot1 and joint 1 of robot2 are connected to the Cube Connector as shown in the figure. A pair of grippers are used as a mouth for the dog.

 

Programming the dog in Ch:

A Ch program dog.ch can be used to control this dog creature. The member function robot.moveJoint() is used to control the movement of a joint. The non-blocking member function robot.moveJointNB() is used to control two join motions at once,  with the member function robot.moveWait() for synchronization of motions for two joints.

 

/* File: dog.ch

   Drive a dog robot with two linkbots

   and use a gripper as a mouth.

   Joint 3 of robot1 and joint 1 of robot2

   are connected to the Cube Connector */

#include <linkbot.h>

CLinkbotI robot1, robot2;

CLinkbotI mouth;    // you can replace Linkbot-L by Linkbot-I

 

// move dog forward

robot1.moveJointNB(JOINT1, 180);

robot2.moveJoint(JOINT3, -180);

robot1.moveWait();

 

// turn dog to right

robot1.moveJointNB(JOINT1, 120);

robot2.moveJoint(JOINT3, 120);

robot1.moveWait();

 

// move dog forward

robot1.moveJointNB(JOINT1, 180);

robot2.moveJointNB(JOINT3, -180);

robot1.moveWait();

 

// turn head side to side

mouth.moveJoint(JOINT2, 45);

mouth.moveJoint(JOINT2, -90);

mouth.moveJoint(JOINT2, 45);

 

// move dog forward

robot1.moveJointNB(JOINT1, 180);

robot2.moveJoint(JOINT3, -180);

robot1.moveWait();

 

// open and close mouth

mouth.moveJoint(JOINT1, -45);

mouth.moveJoint(JOINT1, 45);

 

 

 

Please reload

Recent Posts

Please reload

0
  • Facebook Social Icon
  • Google Places Social Icon
  • Instagram Social Icon
  • Twitter Social Icon
  • YouTube Social  Icon