In the robotics world, we normally use 2D lidar or 3D lidar to detect the obstacles as the perception sensors. Although using the camera with the deep learning model develops very fast in recent years and it’s able to detect different objects, lidar is more convenient and “simpler” to integrate into robotics. There are a lot of mature lidar obstacle detection algorithms in the ROS system (Robotic Operation System). Normally when using lidar, you don’t need to write anything instead you just need to config the YAML file and all things magically work.
When using lidars, 3D lidar is able…
In our daily work, we may use several calendars at the same time, one for group work, one for self-work, one for family TODO, etc… Sometimes it’s hard to follow the schedule. SO, in my company, we created a small python script to fetch all events and TODOs which will happen today, and send an email to everyone in the morning. This is really helpful since it will remind us of the schedule especially we will be noticed in advance and then arrange them more flexibly.
We could do this because it’s easy to create a CalDav client to fetch…
This is the second article appearing in this series: Rust Client for ROS2 from Scratch.
The other parts are: 0. Integrate C API to Create ROS2 node
It has been quite some time since I published the first article in this series. Over the last month, I’ve been busy moving into a new apartment and spent most of my time helping set-up our new place — which gave me little time for other things. …
This is the first article in this series: Rust Client for ROS2 from Scratch.
The other parts are: 1.1 Create the Dynamic Library via CMake & Empy
ROS2 is the latest version of ROS (Robot Operating System), which forms the basis for building applications related to robotics, and also provides a lot of libraries and tools for such applications. The primary advantage of moving from ROS to ROS2 is that ROS2 uses DDS for its communication system. Using DDS does not require a master node
in ROS, which simplifies the communication protocol. For further information on the advantages and differences…
Rust has seen rapid growth ever since Mozilla began sponsoring the project in 2009, and later announcing its development and release in 2010. As stated by the Octoverse in 2019, Rust has been the second fastest programming language in terms of growth and adoption by developers. Additionally, Rust has been voted to be the most loved language in a survey conducted by StackOverflow in 2020 . Rust’s growth is attributable by its evident pros, namely: robust performance and powerful security. Its performance matches that of C/C++, along with an added measure of security checks and memory management. …
Today, with the vast improvements in machine learning, character extraction and recognition from images is much simpler than before, thanks to well developed deep learning algorithms such as CNN, LSTM, etc. Before the advent of these sophisticated machine learning algorithms, one had to use template matching to match every character image with predefined templates. Template matching required us to have a well defined cropped character image — however, cropping the image to conformity was difficult. Thus, finding a good algorithm for cropping characters and preprocessing images to conform to the requirements was time consuming.
A Total Station (TS) or a Laser Measurement instrument is a device used to accurately measure the distance between two points in a plane. Such devices are known for their accuracy and are frequently used in construction sites. However, in order to accurately measure the distance between two points, there should not be any obstacles that block the line of sight between the two points. One of the major problems in a construction site is that there are many obstacles (cranes, material, larger equipment, etc.), which would get in the way of the distance measuring devices and the measurement points.
…
Robots make our life easier | Robotics, Reinforcement Learning, Web, Python, Rust & Life Hacking