Giter VIP home page Giter VIP logo

q_dxl's Introduction

Q_dxl

This example is created for testing:

  • Serial connection
  • Testing two dynamixel motors (eg. MX-28AT)
  • Doing the conversion from absolute encoder (of dynamixel motors) to incremental encoder

With this, one can use the dynamixel motors for several applications:

  • Control robotic arms (serial or parallel types) - which often use absolute encoders

  • Control autonomous mobile robots - which often use incremental encoders (eg. publishing odometry in ROS-based applications)

  • Author: N.D.Quan - 30/10/2021

Environment / Requirements:

  • Qt C++ (eg. 5.14)
  • OpenCm9.04 board : for interfacing with Robotis dynamixel motors
  • TWO dynamixel motors (this example is using two motors)

Usage:

  • Press "Connect" button for open serial port (the one of OpenCM board)
  • Press "Send Cmd" to send command (input to LineEdit). The format data is: "Value1#Value2#" , where Value1, Value2 are the goal values (desired position or speed) in Position Mode or Wheel Mode.
  • Press corresponding buttons for the working modes. Free Drive Mode is for collecting encoder values only (eg. teaching mode)
  • The feedback sent from OpenCM board has the format: "Q1,Q2,QP1,QP2\r". Where Q1,Q2 are absolute encoder values in position of dynamixel motors. QP1,QP2 are velocities of the two motors.
  • Incremental encoder values will start at (0,0) when a serial port is openned.

Q1,Q2 are in the range of [0, 4095] (12 bit absolute encoder). For MX-28AT motors, unit in position = 0.088 deg

QP1, QP2 are in the range of [0, 1023] for positive direction (CCW) and ([1024,2047] for negative direction (CW). For MX-28AT motors, unit in speed = 0.114 rpm

GUI example:

q_dxl's People

Contributors

ibov avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.