Guest
on 12 July 2017
Robot development made easy with Husarion CORE2-ROS running Ubuntu
This is the first in a series of two posts by guest blogger; Dominik Nowak, CEO at Husarion.
We’ve seen many breakthroughs happening in the IT industry over the last decade. Arguably the most meaningful one on the consumer side was the adoption of smartphones and mobile development. What’s the next big thing, now that the smartphones are so common and, let’s face it, slightly boring? We say: robotics.
Business knows that well with many manufacturing lines running solely by robots. The consumer and service side, though, have yet to see a massive breakthrough. We believe it’s all a matter of accessibility and lowering the barrier to entry for developers. There just have to be good, simple tools to quickly prototype and develop robots. To test new ideas and empower engineers, so they can solve many of the issues humanity still faces. Issues that are trickier to tackle than a tap in an app.
Building robots is a challenging task that the Husarion team is trying to make easier. Husarion is a robotic company working on rapid development platform for robots. The products of the company are CORE2 robotic controller and the cloud platform to manage all CORE2 based robots. CORE2 is the second generation of Husarion’s robotics controller and it’s now available here.
CORE2 combines a real-time microcontroller board and a single board computer running Ubuntu. Ubuntu is the most popular Linux distribution not only for desktops, but also for embedded hardware in IoT & robotics applications.
CORE2 controller comes in two configurations. The first one with ESP32 Wi-Fi module is dedicated for robotic applications that need low power consumption and real-time, secure remote control. The second one, called CORE2-ROS, basically integrates two boards in one:
– A board with real-time microcontroller running firmware using the Real-Time Operating System (RTOS) and integrating interfaces for motors, encoders and sensors
– A single board computer (SBC) running Linux with ROS packages (Robot Operating System) and other software tools.
The ‘real-time’ board does the low-level job. It contains the efficient STM32F4 series microcontroller which is great for driving motors, reading encoders, communicating with sensors and controlling the whole mechatronic or robotic system. In most applications, the CPU load does not exceed a few percents and the real-time operation is guaranteed by a dedicated programming framework based on RTOS. We also assured the compatibility with Arduino libraries. The majority of the tasks are processed in the microcontroller peripherals, such as timers, communication interfaces, ADCs etc. with the strong support of interrupts and DMA channels. In short, it is not a job for a single-board computer that has the other tasks.
On the other hand, it’s almost obvious that the modern and advanced robotic applications can no longer be based only on microcontrollers, for a few reasons:
– Autonomous robots need a lot of processing power to perform navigation, image and sound recognition, moving in a swarm etc.,
– Writing the advanced software requires standardisation to be efficient – SBCs become more and more popular in the industry and the same is observed for the software written for SBCs, which is very similar to PC computers
– SBCs are getting less expensive every year
– Husarion believes that combining these two worlds is very beneficial in robotics.
CORE2-ROS controller is available in two configurations with Raspberry Pi 3 or ASUS Tinker Board. CORE-ROS is running Ubuntu, Husarion dev & management tools and ROS packets.
In the next post, find out why Husarion decided to use Ubuntu.