Implementation robot operating system — brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

Implementation robot operating system — brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

[introduction] robot operating system (ROS) driver is based on ADI product and develop, because this can be directly in ROS ecosystem,use these products. If article general overview wheres application, product and system (for example, map of own navigation, safe bleb and data collect a robot) in use and compositive these driver; And how will conduce to so assess new technology quickly, avoid to appear to handle sexual issue with the each other of tripartite product.

  

Summary

Robot operating system (ROS) driver is based on ADI product and develop, because this can be directly in ROS ecosystem,use these products. If article general overview wheres application, product and system (for example, map of own navigation, safe bleb and data collect a robot) in use and compositive these driver; And how will conduce to so assess new technology quickly, avoid to appear to handle sexual issue with the each other of tripartite product. In all products that discuss in the article, will pay close attention to what release recently to be used at ADI Trinamic mainly? The ROS driver of electric machinery controller, this driver is to be used at embedded athletic pilot is complete board class module, motion of shirt-sleeve ADI Trinamic controls professional knowledge, and the imitate engineering technology of ADI and skill of power source design. 1

What is ROS?

ROS is a robot among, include a group of software library and powerful development tool (arrive from driver advanced algorithm) , can regard the development of robot system or application as the foundation. ROS involves much territory (for example, consumptive electron, industry, car) , support many platform (Linux, Windows, MacOS and a few embedded platform) , and 100% sources, offer commercial option. Profit from comes from the special resource of global technology community, ROS can win substantial support, help an user simplify to its are designed and apply thereby.

What is the working principle of this technology?

ROS only then 2007, already became drive automatically the robot with the field welcome equipment such as robot of car, industry, aircraft develops the archetypal platform that make. The course develops ceaselessly, this technology has two version now: ROS1 and ROS2.

ROS1 and ROS2 system must be kept apart each other, but pass ROS bridge, can undertake correspond and commutative data between these two systems.

The main distinction that expresses 1.ROS1 and ROS2 2

Element

ROS1

ROS2

Communication agreement

XMLRPC + TCPROS

DDS

Framework

ROS main control implement + distributed

Completely distributed

Compose builds a system

Catkin (be based on Cmake)

Colcon/ament (be based on Cmake)

Compose builds output

Ros_ws/devel

Ros_ws/install

Parameter

Trends of global parameter server is configured afresh

Every node parameter

Release

XML

Python (+ XML, YAML replaces a language)

Command

Roslaunch, Rosrun, Rostopic

Ros2 Launch, Ros2 Run, Ros2 Topic

Platform

Basically be Ubuntu

Linux, MacOS, Windows

The platform that ROS supports

ROS Noetic is the final version of ROS1, will end support in May 2025, and since ROS2 was rolled out in June 2020 oneself, ceaseless scroll is issued newlier edition.

If need to get complete list, examine these links please, in order to understand the platform of the platform that ROS1 supports and ROS2 support.

ROS basic idea

Graph the 1 a few basic ideas that showed ROS, include functional bag, node, theme, service and information.

Implementation robot operating system -- brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

Graph 1.ROS basic data flows.

Note: To ROS1 and ROS2 character, the ROS basic idea of later development discussion is similar.

Functional bag

ROS function includes the main organization system that is ROS program or node. This is ROS in most the compose of core is built / release. When founding ROS function to wrap, set space of appropriative ROS work without fail please. This work space is called Catkin work space, among them the official compose that Catkin is ROS builds a system.

Node

ROS node is the executable program that establishs in ROS. They are the process that executes specific mission. ROS node can use ROS client to carry a library (if Python client carries library Rospy and C++ client,carry library Roscpp) mutual communication. Node can subscribe to and / or release a text, also can be offerred or use a service. 3

Theme

ROS theme is ROS node is generated (perhaps release, for the term that uses ROS) data passageway.

In ROS, promulgator node is the person of the theme that broadcast, and the auditor that node of the person that subscribe to is a theme.

In the graph 2 in, the node of Generic_motor_control is the person that broadcast. / Cmd_vel is the text that Velocity_publisher releases. This expresses, velocity_publisher is offerred be based on electric machinery to control (or order rate) rate news.

And the node of Ros_application is auditor, velocity_subscriber subscription theme / Cmd_vel. This expresses, velocity_subscriber is visited or use the speed information that Velocity_publisher provides.

Implementation robot operating system -- brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

Graph 2. Promulgator – the person that subscribe to.

Message

The theme is data passageway, and the message is data, use the as compatible as ROS, form that applies to different sensor.

It is the sensor of give typical examples that applies to ROS news format below:

? Flight time (ToF) photographs like the head: Sensor_msgs/Image, Sensor_msgs/PointCloud

? Inertial measure unit (IMU) sensor: Sensor_msgs/Imu

? Electric machinery control: Geometry_msgs/Twist

? Wheel coder: Geometry_msgs/TwistStamped, Geometry_msgs/ TwistWithCovarianceStamped

ROS theme is passed send a message (thematic promulgator) or receive an information (the person that the theme subscribes to) have communication, the data type that and must be used matchs.

For example, in the graph 2 in, the rate news that comes from Velocity_publisher node (order rate) the hope is visited by Velocity_subscriber node / use. If Geometry_msgs/Twist of type of service data of thematic promulgator Velocity_publisher, criterion Velocity_subscriber of the person that the theme subscribes to also should use same data kind.

Service

Promulgator – mode of communication of the person that subscribe to is open mode mode, the response that in applying to distributed system, needs normally is alternant. 4

Service support node requests through sending and receive answer have communication. Promulgator – mode of communication of the person that subscribe to uses.srv document, in these files, appointed the service such as request and answered news type to describe.

The service is mode of two-way and synchronous communication, include client end and server among them. Server node provides a service, and the client carries node to send a request and await server node to make answer.

For example, in the graph 3 in, server_node offers service SetVelocity.srv to command speed Vel in order to change. This service accepts the rate value of Float32 format, return condition with string format; If set the rate of the request, it is ” Success ” ; Otherwise, for ” FAIL ” .

Implementation robot operating system -- brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

Graph 3. Use service give typical examples.

Client_node sends a request, the command speed setting is 2.5 Mbps. After Server_node receives a request, send instantly ” Success ” answer.

ADI solution compositive in ROS ecosystem

ADI is the formal member of ROS-Industrial alliance, ROS-Industrial is a project opening a source, aim to expand the advanced function of ROS software the hardware related to industry and application. The 5 one member that regards this technology as community, the target with prime ADI is to face industrial domain to develop special module.

ADI developed ROS driver in the light of different special module. The driver that develops to reveal place uses the function of ROS, ADI company developed robot of ADI own shift (ADAM) serves as in-house and own floating platform (refer to a graph 4) .

Implementation robot operating system -- brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

Graph 4.ADAM.

ADAM: Robot of ADI own shift

ADAM provides support by ROS, carry the different parts of an apparatus or appliance that ROS supports. The ROS driver that this platform showed ADI company how compositive in mobile robot application, guide boat applies independently especially.

The graph shows those who be the ADAM that has different module 5 times to simplify hardware graph. This ADAM basically joins the following parts of an apparatus:

? ADIS16470OrIMUThe much rod that sensor uses accurate gyroscope, accelerometer, magnetometer and pressure sensor is combined, these parts of an apparatus basically use as detect feedback, use at improving the position / directional estimation.

? ADBMS6948It is monitor of a many unit batteries, measurable amount to connective of 16 series connection electric core, taller measurement is had inside whole temperature limits precision.

? EVAL-ADTF3175D-NXZOr CMOSToFOffer outstanding high resolution, be calculated with deepness and driver of processing, laser, power source management and have referenced firmware / the development tool of software supplements each other, can bring more advantage.

? Controller of ADI Trinamic electric machinery is to be used atEmbedded athletic controlcomplete board class solution, motion of shirt-sleeve ADI Trinamic controls professional knowledge, and the imitate engineering technology of ADI and skill of power source design. 1

Implementation robot operating system -- brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

Of graph 5.ADAM simplify hardware graph.

The graph shows those who be ADAM 6 times to simplify ROS framework, the many application that driver of this ADAM use ROS and own navigation place need / algorithmic node. IMU data (/ Imu/data_raw) and feedback of controller of ADI Trinamic electric machinery (/ Tmc_info) uses gesture estimated input, the mileage that gets a robot thereby measures an outcome (/ Odom) . Lidar data (/ Scan) is the synchronous fixed position that is used at making a map and map scale (the main input of SLAM) algorithm; ToF data (/ Image_raw) still can use the input that makes other SLAM algorithm. Next, move_base division name a person for a particular job awaits an user to give out any target attitude, send speed to command to controller of ADI Trinamic electric machinery (/ Cmd_vel) , make a robot mobile.

Implementation robot operating system -- brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

Of stack of graph 6.ADAM navigation simplify ROS framework.

Driver of ROS of controller of ADI Trinamic electric machinery

Controller of ADI Trinamic electric machinery (TMC) is to be used at embedded athletic pilot is complete board class solution, motion of shirt-sleeve ADI Trinamic controls professional knowledge, and the imitate engineering technology of ADI and skill of power source design. 1 support odd axis / much axis pace enters electric machinery, without brush dc machine (the of all kinds electric machinery such as BLDC) , can you include CAN, EtherCAT with interface? , RS-232, RS-485 and USB, does supportive agreement cover Trinamic motion to control a language (TMCL? ) , CANopen? Over EtherCAT (CoE) , CANopen or Modbus. 1

The name isTMCL-IDEIDE can help an user develop application and relaxed to these module new process designing. This IDE uses TMCL to realize independent operation, or use standardization CANopen? Agreement, allow an user to install parameter, real time to undertake visible processing to data, develop / debug independence application.

Because TMC makes new-style intelligence is carried out implement become a possibility, and gain ground increasingly as ROS, be in especially robot domain, we developed additional support in the light of these module, be like ROS driver, expand further thereby of manufacturing industry and industrial automation with exemple. Specific for, predict these ROS driver aux will be able to are enough:

? Control the speed of electric machinery, position or torque

? Controller of monitoring electric machinery and electric machinery information

The function that TMC ROS driver and TMCL-IDE provide is similar, but the systematic node that it can let support ROS uses these TMC easily, need not install any other driver. Publish up to the article when, this driver supports CAN port only (especially SocketCAN) , other interface is in development, also will provide support very quickly.

HereListed the module of controller of ADI Trinamic electric machinery that supports at present (TMCM) .

Software framework

The graph shows those who be Adi_tmcl 7 times to simplify software framework.

If the graph is shown 7 times, because Adi_tmcl uses the SocketCAN driver that acquiesce of most Linux system supports, do not need any additional driver so. In addition, the TMCL agreement that Adi_tmcl has him is analytic implement, can understand what the user requests to accord with TMCL consequently send / receive an order. Serve as last, tmcl_ros_node is with the form of the promulgator, person that subscribe to and service on ROS system offer direct port. Every kinds of form all provides specific function, these functions can use a group of parameter that introduce in detail partly below to undertake configuration.

Implementation robot operating system -- brief introduction of driver of ROS1 of controller of ADI Trinamic electric machinery

Of graph 7.adi_tmcl simplify software framework.

Characteristic

Adi_tmcl offers a series of character, include:

1.     The TMC with different support board

2.      Use TMCL-IDE undertakes one-time configuration to TMC module

3.      Mobile / stop electric machinery

4.      Can get information of TMC/ electric machinery

5.      Carry out from the definition TMC commands

6.      Can get all axis parameter to be worth

7.     Can get parameter of all overall situation to be worth

8.      Support many TMC board setting

9.      Relaxed and compositive to ROS system / in application

Pay close attention to next month please ” imitate speaks ” medium article ” the controller of Trinamic electric machinery that the palm accuses to carry ROS1 driver ” , article lieutenant general discusses these character in detail, and how does illustrate use these character.

Conclusion

Use controller of ADI Trinamic electric machinery to be able to realize new-style intelligence to carry out implement. Gain ground increasingly as ROS, be in especially robot domain, we developed additional support in the light of these module, be like ROS driver, aim to expand manufacturing industry and industrial automation are used further exemple.

In the article, we revealed ROS how to expand parts of an apparatus, bring the following advantage:

? Offer additional value, expand industry applies for instance;

? Pass ROS communication frame, with tripartite the product can realize each other operation easily;

? Offer more extensive option, convenient client chooses ADI product in its system;

? Assess new technology quickly and begin to use instantly.

Exploration always ceases ceaselessly

? Pay close attention to the article of driver of ROS1 of controller of electric machinery of concerned ADI Trinamic please, know relevant news deep

? Pay close attention to what future publishs to concern the article of the ROS2 that is used at controller of ADI Trinamic electric machinery please

? Download controller of ADI Trinamic electric machineryROS1AndROS2Driver

? Buy ADI Trinamic electric machinery and electric machinery controller to evaluate board

Bibliographical reference

1 “Use at electric machinery and hardware of athletic pilot ADI Trinamic. ” ADI company

2 “Ros2/ros2_documentation. ” GitHub, inc.

3 “Understand ROS node. ” ROS.org.

4 “Service. ” ROS.org.

5 “ROS-Industrial. ” ROS.org.

” ROS.org.. The industrial communication agreement that suits motion to control application and interface. ” ADI company

(origin: ADI company, author: Krizelle Paulene Apostol, software system engineer; Jamila Macagba, soft advanced a systematic engineer; Maggie Maralit, software system involves project manager)

Avoid duty statement: The article is reprint an article, reprint this article purpose to depend on passing more information, the person that copyright puts in original work ‘s charge is all. If involve work copyright issue,article place uses video, picture, written language, contact please small make up undertake handling.

Leave a Reply

Your email address will not be published. Required fields are marked *