What else can I do besides ROS robot autonomous positioning navigation?

With the warming of domestic robots in the past two years, autonomous positioning and navigation technology as the first step of intelligent robotization has been attracting attention in the industry. In order to achieve this function, many manufacturers choose to use the robot operating system ROS (Robot Operation System), today we will talk about the ROS system.

1 What is ROS?

The ROS system originated in 2007, and Stanford University's artificial intelligence laboratory and robotics company Willow Garage developed the prototype of ROS for its Personal Robots Program. After 2008, the further development of ROS was promoted by Willow Garage. After 2012, the ROS team became independent from WillowGarage and became the non-profit organization of the Open Source Robotics Foundation (OSRF), responsible for maintaining and updating ROS and providing support and open source tools for the robot community.

Willow Garage PR2 Robot Platform

ROS releases a version every year, and the ROS versions currently being maintained include indigo, jade, kinetic, and some earlier versions have now stopped maintenance. ROS relies on the Linux kernel, so whenever the Ubuntu version changes, the dependencies of different versions of ROS will change accordingly.

2 ROS characteristics and advantages

ROS is called the robot operating system. In fact, ROS acts as the communication middleware, that is, based on the existing operating system, a complete set of implementation framework for the robot system is built. ROS also provides a set of utilities and software libraries for maintaining, building, writing, and executing software code that can be used on multiple computing platforms.

It is worth mentioning that the designers of ROS consider the development language used by each developer differently, so the development language of ROS is independent and supports various development languages ​​such as C++ and Python. Therefore, in addition to the officially provided feature packs, ROS also aggregates a large number of open source feature packs implemented by developers around the world. For example, SLAMTEC has released the ROS feature package rplidar_ros for its self-developed lidar RPLIDAR. These open source feature packs together with ROS form a powerful open source ecosystem.

The system structure design of ROS is also quite distinctive. The ROS runtime is composed of multiple loosely coupled processes. Each process ROS is called a node. All nodes can run on one processor or distributed. On multiple processors. In practical use, this loosely coupled structural design allows developers to flexibly add individual functional modules based on the functionality required by the robot.

For example, in a mobile robot supporting SLAM function, laser data acquisition and mileage data acquisition are implemented by two nodes for sensing the environment; SLAM algorithm is running in another node for processing sensor data and mapping; SLAM The topic and the data collection node communicate in a topical manner. When adding a camera module, you only need to add a new video node to the existing structure, so that it can communicate with the SLAM node in the topic mode. The other two function nodes do not need any changes.

Indoor map constructed by ROS

Like other open source products (Linux, GCC, etc.), ROS has excellent open source genes, loosely coupled design methods, scalable software architecture, and functional reuse ideas, which greatly reduces the barriers to entry in the robotics world, leaving developers no need to The predecessors have gone through many detours and mastered a variety of knowledge before they can realize their dream of robot design. Developers can use ROS's underlying framework to quickly implement system prototypes with selected feature packs, allowing developers to spend more time on core algorithm development improvements. Users can also select certain feature packs individually and integrate them into existing products to achieve specific functions.

3 ROS defects and deficiencies

For robot manufacturers, the development of ROS, more hope to use the system to achieve robot navigation, positioning and path planning, which depends on SLAM algorithm (simultaneous localization and mapping, real-time positioning and map construction).

But as an open source project, ROS also has some problems. For example, because ROS distributes functions among nodes, nodes communicate based on a message mechanism, and the communication part consumes a lot of system resources. Especially when all nodes are on the same processor, ROS still performs corresponding message distribution, data transfer between nodes is copied through memory, and a large amount of system resources are wasted on communication, so the system must use high-performance processor and The storage system compensates for the loss. In other words, the use of ROS to implement SLAM requires hardware devices with superior performance. For some miniaturized embedded platforms, especially in actual robot products, the consumption of computing resources and storage space will increase the cost.

In addition to the limitations of ROS's system design, the use of ROS to implement SLAM requires in-depth adjustment and optimization, which requires a lot of manpower and time costs. More importantly, for specific robot products, such as sweeping robots, you also need unique edge cleaning, folding back cleaning, multi-room autonomous navigation and other functions. Currently, the existing ROS system can only achieve simple mapping. Meet the actual needs of sweeping robots.

4 What can I do outside of ROS?

On the road of commercial application development of robots, many technical teams and companies have developed corresponding commercial products for specific functions of robots, especially in the field of mobile robots, such as Slamware control module of Sijing Technology, which will implement SLAM algorithm, navigation, positioning and other functions. It is integrated into a small module and provides a multi-platform SDK for user convenience. For the specific application of sweeping robots, SiGe Technology also provides a complete solution, integrating its unique edge cleaning, reciprocating cleaning, area division, breakpoint continuous sweep, automatic recharge and other functions, convenient for sweeping robot manufacturers Integration does not require secondary development.

Of course, compared with adopting open source ROS system, choosing existing mature solutions will undoubtedly increase the cost of robot manufacturers, but considering that manufacturers must invest a lot of manpower and time for algorithm optimization and adjustment, this is also a better. s Choice.

In summary, ROS provides a standardized framework for robot research and development, its convenient code reuse, and effective communication among researchers can accelerate the prototyping and algorithm development verification of robot products. However, if you want to make stable and reliable products and choose existing mature solutions, you can greatly reduce R&D costs, quickly obtain product prototypes, and put them on the market.

Schneider Electric provide energy and automation digital solutions for efficiency and sustainability. we combine world-leading energy technologies, real-time automation, software and services into integrated solutions for homes, buildings, data centers, infrastructure and industries. We make process and energy safe and reliable, efficient and sustainable, open and connected.

Schneider Inverter

Inverter For Motor,3 Phase Converter For Motor,3 Phase Inverter For Motor,Inverter Dc To Ac

Wuxi Trenty Machinery & Equipment Co., Ltd. , https://www.elec-inverter.com