<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Husky &#8211; Robohub</title>
	<atom:link href="https://robohub.org/tag/husky/feed/" rel="self" type="application/rss+xml" />
	<link>https://robohub.org</link>
	<description>Connecting the robotics community to the world</description>
	<lastBuildDate>Sun, 04 Oct 2026 22:53:08 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>
	<item>
		<title>Customer story: Deployable, autonomous vibration control of bridges using Husky UGV</title>
		<link>https://robohub.org/customer-story-deployable-autonomous-vibration-control-of-bridges-using-husky-ugv/</link>
		
		<dc:creator><![CDATA[Clearpath Robotics]]></dc:creator>
		<pubDate>Thu, 05 Jan 2017 19:35:11 +0000</pubDate>
				<category><![CDATA[education]]></category>
		<category><![CDATA[Clearpath Robotics]]></category>
		<category><![CDATA[Husky]]></category>
		<category><![CDATA[industrial]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[research]]></category>
		<category><![CDATA[sensing]]></category>
		<category><![CDATA[UGV]]></category>
		<guid isPermaLink="false">http://robohub.org/customer-story-deployable-autonomous-vibration-control-of-bridges-using-husky-ugv/</guid>

					<description><![CDATA[<p>Sriram Narasimhan&#8217;s research team are shaking things up in the Civil Engineering Structures Lab at the University of Waterloo. The research, which is led by Ph.D Candidate Kevin Goorts, is developing a new mobile damping system for suppressing unwanted vibrations in lightweight, flexible bridges. Whereas damping systems are often permanent fixtures built into the bridge, [&#8230;]</p>
<p>The post <a rel="nofollow external noopener noreferrer" href="https://www.clearpathrobotics.com/2017/01/customer-story-deployable-autonomous-vibration-control-bridges-using-husky-ugv/" data-wpel-link="external" target="_blank">Customer Story:  Deployable, Autonomous Vibration Control of Bridges Using Husky UGV</a> appeared first on <a rel="nofollow external noopener noreferrer" href="https://www.clearpathrobotics.com/" data-wpel-link="external" target="_blank">Clearpath Robotics</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="attachment_69394" style="width: 910px" class="wp-caption aligncenter"><a href="http://robohub.org/wp-content/uploads/2017/01/Husky1-clearpath.jpg" data-wpel-link="internal"><img fetchpriority="high" decoding="async" aria-describedby="caption-attachment-69394" class="size-full wp-image-69394" src="http://robohub.org/wp-content/uploads/2017/01/Husky1-clearpath.jpg" alt="Image: Clearpath" width="900" height="601" srcset="https://robohub.org/wp-content/uploads/2017/01/Husky1-clearpath.jpg 900w, https://robohub.org/wp-content/uploads/2017/01/Husky1-clearpath-425x284.jpg 425w, https://robohub.org/wp-content/uploads/2017/01/Husky1-clearpath-449x300.jpg 449w" sizes="(max-width: 900px) 100vw, 900px" /></a><p id="caption-attachment-69394" class="wp-caption-text">Image: Clearpath</p></div>
<p>Sriram Narasimhan’s research team are shaking things up in the Civil Engineering Structures Lab at the University of Waterloo. The research, which is led by Ph.D Candidate Kevin Goorts, is developing a new mobile damping system for suppressing unwanted vibrations in lightweight, flexible bridges. Whereas damping systems are often permanent fixtures built into the bridge, their system is designed to be adaptable, autonomous, and better suited for rapid, temporary deployment.</p>
<p><span id="more-69367"></span></p>
<h4><hr class="xh2  "></h4>
<h4><strong>A SHIFT TOWARDS FLEXIBLE, LIGHT-WEIGHT STRUCTURES</strong></h4>
<p>Their work follows a recent industry shift towards using lightweight materials in the construction of civil engineering structures. Driven primarily by cost savings, as well as both the ease and speed of deployment, these lightweight structures could be a pedestrian bridge or a temporary bridge used in disaster relief scenarios, and are often more sensitive to external forces due to the reduced self-weight, and therefore require auxiliary damping devices.</p>
<div id="attachment_69395" style="width: 910px" class="wp-caption aligncenter"><a href="http://robohub.org/wp-content/uploads/2017/01/Husky3-clearpath.jpg" data-wpel-link="internal"><img decoding="async" aria-describedby="caption-attachment-69395" class="size-full wp-image-69395" src="http://robohub.org/wp-content/uploads/2017/01/Husky3-clearpath.jpg" alt="Husky-based mobile bridge damping system on a full-scale aluminum pedestrian bridge. Image: Clearpath" width="900" height="601" srcset="https://robohub.org/wp-content/uploads/2017/01/Husky3-clearpath.jpg 900w, https://robohub.org/wp-content/uploads/2017/01/Husky3-clearpath-425x284.jpg 425w, https://robohub.org/wp-content/uploads/2017/01/Husky3-clearpath-449x300.jpg 449w" sizes="(max-width: 900px) 100vw, 900px" /></a><p id="caption-attachment-69395" class="wp-caption-text">Husky-based mobile bridge damping system on a full-scale aluminum pedestrian bridge. Image: Clearpath</p></div>
<h4><hr class="xh2  "></h4>
<h4><strong>HUSKY UGV: THE IDEAL MOBILE ROBOTIC PLATFORM</strong></h4>
<p>At the center of the team’s mobile control system is a Husky unmanned ground vehicle (UGV). An electromechanical mass damper mounted on top of the Husky is used to generate inertial control forces which are magnified by the body dynamics of the Husky. When situated on a bridge, the system is able to respond to changes in the structural response by autonomously positioning itself at the appropriate location and applying the desired control force.</p>
<p>For Goorts’ research, Husky UGV was the ideal mobile base upon which to develop their system. “The Husky is a rugged vehicle suitable for outdoor applications with sufficient payload capacity for both the damper and associated computational equipment.” said Goorts. “The low-profile and large lug thread tires are well suited for providing the necessary static friction to prevent sliding and transfer control forces. Moreover, Husky’s readily available ROS (Robot Operating System) integration allowed us to use several sensor types and position control algorithms.”</p>
<div id="attachment_69393" style="width: 910px" class="wp-caption aligncenter"><a href="http://robohub.org/wp-content/uploads/2017/01/Husky2-clearpath.jpg" data-wpel-link="internal"><img decoding="async" aria-describedby="caption-attachment-69393" class="size-full wp-image-69393" src="http://robohub.org/wp-content/uploads/2017/01/Husky2-clearpath.jpg" alt="Linear motor and front-facing Kinect vision sensor mounted on Husky UGV mobile base. Image: Clearpath" width="900" height="601" srcset="https://robohub.org/wp-content/uploads/2017/01/Husky2-clearpath.jpg 900w, https://robohub.org/wp-content/uploads/2017/01/Husky2-clearpath-425x284.jpg 425w, https://robohub.org/wp-content/uploads/2017/01/Husky2-clearpath-449x300.jpg 449w" sizes="(max-width: 900px) 100vw, 900px" /></a><p id="caption-attachment-69393" class="wp-caption-text">Linear motor and front-facing Kinect vision sensor mounted on Husky UGV mobile base. Image: Clearpath</p></div>
<p>The Husky is also equipped with a laptop running ROS and Kinect vision sensors on the front and back of the vehicle. Using wheel encoder data and measurements from the Kinect sensors, the system is able to perform SLAM (Simultaneous Localization and Mapping) and autonomously navigate back and forth along the span of the bridge. One of the immediate challenges the team faced was getting the robot to accurately localize on a bridge with a repetitive structural design – everything looked the same to the robot from different positions. To overcome this, they placed unique AR (augmented reality) tags along the bridge between which the robot could navigate.</p>
<div id="attachment_69396" style="width: 910px" class="wp-caption aligncenter"><a href="http://robohub.org/wp-content/uploads/2017/01/Husky4-clearpath.jpg" data-wpel-link="internal"><img decoding="async" aria-describedby="caption-attachment-69396" class="size-full wp-image-69396" src="http://robohub.org/wp-content/uploads/2017/01/Husky4-clearpath.jpg" alt="A National Instruments (NI) cRIO is being used for all data processing tasks and execution of the structural control loops, and a TCP data link communicates between the ROS laptop and cRIO. Image: Clearpath." width="900" height="601" srcset="https://robohub.org/wp-content/uploads/2017/01/Husky4-clearpath.jpg 900w, https://robohub.org/wp-content/uploads/2017/01/Husky4-clearpath-425x284.jpg 425w, https://robohub.org/wp-content/uploads/2017/01/Husky4-clearpath-449x300.jpg 449w" sizes="(max-width: 900px) 100vw, 900px" /></a><p id="caption-attachment-69396" class="wp-caption-text">A National Instruments (NI) cRIO is being used for all data processing tasks and execution of the structural control loops, and a TCP data link communicates between the ROS laptop and cRIO. Image: Clearpath.</p></div>
<h4><hr class="xh2  "></h4>
<h4><strong>BRIDGE VIBRATIONS REDUCED BY 70%</strong></h4>
<p>The effectiveness of the control system is tested using real-time hybrid simulation (RTHS), a dynamic testing method that couples the physical control system with a numerical model of the structure. These tests were carried out on a full-scale aluminum pedestrian bridge with re-designed panels to measure the forces being applied by the system. Results from the simulations show the system can provide up to a 70% reduction in the lateral displacement of the bridge.</p>
<p>The current prototype is suitable for bridges with a mass up to 1-tonne and is scalable to accommodate larger structures, either with a larger vehicle or with multiple vehicles that work cooperatively. Looking forward, the team is exploring the idea of making the system vehicle agnostic, which could allow any vehicle to be turned into an autonomous bridge stabilizing machine.</p>
<p>The post <a href="https://www.clearpathrobotics.com/2017/01/customer-story-deployable-autonomous-vibration-control-bridges-using-husky-ugv/" target="_blank" rel="nofollow external noopener noreferrer" data-wpel-link="external">Customer Story: Deployable, Autonomous Vibration Control of Bridges Using Husky UGV</a> appeared first on <a href="https://www.clearpathrobotics.com/" target="_blank" rel="nofollow external noopener noreferrer" data-wpel-link="external">Clearpath Robotics</a>.</p>
<hr class="xh2  ">
<p><i>If you liked this article, you may also be interested in:</i></p>
<ul>
<li><a href="http://robohub.org/clearpath-robotics-launches-warthog-ugv-the-amphibious-robot/" target="_blank" data-wpel-link="internal">Clearpath Robotics launches “Warthog UGV”, the amphibious robot</a></li>
<li><a href="http://robohub.org/interview-international-ground-vehicle-ground-competition-igvc-winner-on-bigfoot-2-husky-ugv/" target="_blank" data-wpel-link="internal">Interview: International Ground Vehicle Ground Competition (IGVC) winner on “Bigfoot 2” Husky UGV</a></li>
<li><a href="http://robohub.org/4-reasons-why-industry-4-0-will-leave-agvs-behind/" target="_blank" data-wpel-link="internal">4 reasons why Industry 4.0 will leave AGVs behind</a></li>
<li><a href="http://robohub.org/5-innovation-challenges-in-materials-transport/" target="_blank" data-wpel-link="internal">5 innovation challenges in materials transport</a></li>
<li><a href="http://robohub.org/clearpath-and-christie-demo-3d-video-game-with-robots/" target="_blank" data-wpel-link="internal">Clearpath and Christie demo 3D video game with robots</a></li>
</ul>
<p><i>See all </i><a href="http://robohub.org/" target="_blank" data-wpel-link="internal"><i>the latest robotics news</i></a><i> on Robohub, or </i><a class="ext-link" title="" href="http://eepurl.com/t-UEf" target="_blank" rel="external follow noopener noreferrer" data-wpel-link="external"><i>sign up for our weekly newsletter</i></a><i>.</i></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>ROS, Arduino, and a Husky simulation</title>
		<link>https://robohub.org/ros-arduino-and-a-husky-simulation/</link>
		
		<dc:creator><![CDATA[Clearpath Robotics]]></dc:creator>
		<pubDate>Fri, 23 Jan 2015 18:21:54 +0000</pubDate>
				<category><![CDATA[education]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[Husky]]></category>
		<category><![CDATA[ROS]]></category>
		<category><![CDATA[tutorial]]></category>
		<guid isPermaLink="false">http://robohub.org/ros-arduino-and-a-husky-simulation/</guid>

					<description><![CDATA[<p>By Martin Cote The Arduino family of micro controllers has quickly become a go-to board for hobbyists due to its ease of use. Often times roboticists must create communication protocols to allow their embedded hardware to communicate with a computer. One of the most powerful aspects of ROS is that it can communicate with a [&#8230;]</p>
<p>The post <a rel="nofollow external noopener noreferrer" href="http://www.clearpathrobotics.com/blog/arduino-ros/" data-wpel-link="external" target="_blank">ROS, Arduino, and a Husky Simulation</a> appeared first on <a rel="nofollow external noopener noreferrer" href="http://www.clearpathrobotics.com/" data-wpel-link="external" target="_blank">Clearpath Robotics Inc.</a>.</p>]]></description>
										<content:encoded><![CDATA[<p><em>By Martin Cote</em></p>
<p>The Arduino family of micro controllers has quickly become a go-to board for hobbyists due to its ease of use. Often times roboticists must create communication protocols to allow their embedded hardware to communicate with a computer. One of the most powerful aspects of ROS is that it can communicate with a large variety of hardware. That’s where rosserial comes in! Rosserial is a general protocol for sending ROS messages over a serial interface, such as the UART on Arduino. This allows you to easily interface any sensors attached to Arduino into your ROS environment. Read on to learn more!<span id="more-45252"></span></p>
<p>This tutorial will get you started  by setting up the Arduino IDE and installing the rosserial libraries. Then, we’ll test it out by driving the Husky simulation using a neat trick with the Arduino board. It should goes without saying you’ll need an Arduino to complete this tutorial. We’ll also be using a Husky simulator, so make sure to run through our “Drive a Husky” tutorial if you haven’t done so yet.</p>
<h2><span class="wysiwyg-font-size-large">Setup</span></h2>
<p>The first step is to set up your Arduino environment, begin by installing the Arduino IDE and rosserial using:</p>
<pre>sudo apt-get install arduino arduino-core ros-hydro-rosserial ros-hydro-rosserial-arduino</pre>
<p>Once you open up the Arduino IDE for the first time, a directory named “sketchbook” will be created in your home directory. Now we need to import the rosserial library into your arduino IDE. If your sketchbook directory is empty, you may need to create a directory named “libraries” inside of it.</p>
<pre>mkdir ~/sketchbook/libraries
cd ~/sketchbook/libraries
rosrun rosserial_arduino make_libraries.py .</pre>
<p>Restart your Arduino IDE and you should see the ros_lib part of your libraries!</p>
<img decoding="async" class="aligncenter size-full wp-image-45325" src="http://robohub.org/wp-content/uploads/2015/01/ros_lib-check.png" alt="ros_lib-check" width="645" height="774" srcset="https://robohub.org/wp-content/uploads/2015/01/ros_lib-check.png 645w, https://robohub.org/wp-content/uploads/2015/01/ros_lib-check-354x425.png 354w, https://robohub.org/wp-content/uploads/2015/01/ros_lib-check-250x300.png 250w" sizes="(max-width: 645px) 100vw, 645px" />
<p>&nbsp;</p>
<p>You’ll want to ensure that your Ubuntu user is part of the “Dailout” group, which grants you access to serial ports. You can check by using</p>
<pre>groups "username”</pre>
<p>If you don’t see “dailout”, you can easily add yourself using</p>
<pre>sudo gpasswd --add "username" dialout</pre>
<p>One last step to make our lives easier will be to create udev rules so your Arduino is  recognized when plugged in and the correct permissions are set. For more information on udev rules check out ou<a href="https://support.clearpathrobotics.com/hc/en-us/articles/203252569-Udev-Rules" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">r udev article </a>. Begin by plugging in your Arduino.</p>
<p><strong><strong>NOTE:</strong></strong>If you are using a virtual machine, you will have to connect Arduino to the virtual machine after plugging it in.</p>
<img decoding="async" class="aligncenter size-full wp-image-45324" src="http://robohub.org/wp-content/uploads/2015/01/attaching-device-1024x571.jpg" alt="attaching-device-1024x571" width="1024" height="571" srcset="https://robohub.org/wp-content/uploads/2015/01/attaching-device-1024x571.jpg 1024w, https://robohub.org/wp-content/uploads/2015/01/attaching-device-1024x571-425x236.jpg 425w, https://robohub.org/wp-content/uploads/2015/01/attaching-device-1024x571-500x278.jpg 500w" sizes="(max-width: 1024px) 100vw, 1024px" />
<p>You can confirm your system is actually connected to Arduino by running</p>
<pre>ls -l /dev</pre>
<p>Depending on your specific Arduino board, you should either see a line with ttyAMC# or ttyUSB#, where # is a number. This will also tell you the current <a href="https://help.ubuntu.com/community/FilePermissions" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">permissions</a> for your Arduino. Chances are you wouldn’t be able to upload code to your Arduino at the moment because you don’t sufficient permissions, but we will soon solve that by creating a new udev rule!</p>
<p>The udev rule will require the product and vendor ID to be able to identify when our arduino is connected which you can easily find using</p>
<pre>lsusb</pre>
<p>You should see a line similar to</p>
<pre>Bus 002 Device 005: ID 2341:0043</pre>
<p>To confirm this is indeed your Arduino, disconnect it and run the command again, taking note which entry has disappeared. Remember the ID numbers, in this case, 2341 is the vendor ID and 0043 is the product ID. Now venture over to your udev rules at:</p>
<pre>cd /etc/udev/rules.d/</pre>
<p>and create our new rules file, the naming conventions for rules files follows “##-name.rules”. Chose a number that isn’t in use!</p>
<pre>sudo gedit 97-arduino.rules</pre>
<p>Copy the following into your new rules file, replacing #### with your product ID and vendor ID. For more information about what these tags mean, check out our <a href="https://support.clearpathrobotics.com/hc/en-us/articles/203252569-Udev-Rules" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">article</a> on udev rules.</p>
<pre>SUBSYSTEMS=="usb", ATTRS{idProduct}=="###", ATTRS{idVendor}=="####", SYMLINK+="arduino",MODE="0777",</pre>
<p>All that is left is to update your udev rules and reboot your system</p>
<pre>udevadm trigger
sudo reboot</pre>
<p>You should now see “arduino” as an entry in <code class="western">ls -l /dev</code> with full permissions! (rwxrwxrwx)</p>
<h2><strong><span class="wysiwyg-font-size-large">Code</span></strong></h2>
<p>We’re now set to upload our code to Arduino! The code is fairly straight forward, however if you have any difficulties following along, check out our <a href="https://support.clearpathrobotics.com/hc/en-us/articles/201644249-Creating-a-workspace-package-and-publisher" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">“Creating a publisher” tutorial.</a> Copy the following code into the Arduino IDE and click upload. If your udev rules were set correctly you should be able to upload without any errors.</p>
<p><em>If you encounter any errors, verify your arduino is coming up as “arduino” in a ls -l /dev and proper permissions are set. You may also have to point the Arduino IDE towards the correct USB port in tools -&gt; serial port.</em></p>
<pre>#include &lt;ArduinoHardware.h&gt;
#include &lt;ros.h&gt;
#include &lt;geometry_msgs/Twist.h&gt;

ros::NodeHandle nh;

geometry_msgs::Twist msg;

ros::Publisher pub("husky/cmd_vel", &amp;msg);

void setup()
{
 nh.initNode();
 nh.advertise(pub);
} void loop()
{
 if(digitalRead(8)==1)
 msg.linear.x=-0.25;
 
 else if (digitalRead(4)==1)
 msg.linear.x=0.25;
 
 else if (digitalRead(8)==0 &amp;&amp; digitalRead(4)==0)
 msg.linear.x=0;
 
 pub.publish(&amp;msg);
 nh.spinOnce();
 }</pre>
<h2><span class="wysiwyg-font-size-medium">Driving Husky</span></h2>
<p>Now that Arduino is loaded with our code and publishing velocity commands, we can pass these messages along into our ROS environment. We’ll start by launching a Husky simulation:</p>
<pre>roslaunch husky_gazebo husky_empty_world.launch</pre>
<p>All that’s left is to attach the Arduino into our ROS environment using:</p>
<pre>rosrun rosserial_python serial_node.py _port:=/dev/arduino</pre>
<p>We’re ready to try it out! Go ahead and touch the digital pin 8 and you should see Husky drive forward! Similarly if you touch digital pin 4 Husky will drive backwards.</p>
<img decoding="async" class="aligncenter size-full wp-image-45323" src="http://robohub.org/wp-content/uploads/2015/01/ArduinoUno_r2_front450px.jpg" alt="ArduinoUno_r2_front450px" width="450" height="315" srcset="https://robohub.org/wp-content/uploads/2015/01/ArduinoUno_r2_front450px.jpg 450w, https://robohub.org/wp-content/uploads/2015/01/ArduinoUno_r2_front450px-425x297.jpg 425w, https://robohub.org/wp-content/uploads/2015/01/ArduinoUno_r2_front450px-428x300.jpg 428w" sizes="(max-width: 450px) 100vw, 450px" />
<p>This trick is made possible by a phenomenon known as <a href="http://en.wikipedia.org/wiki/Parasitic_capacitance" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">parasitic capacitance</a>, which is usually an unwanted effect in electronics design, but serves nicely for the purpose of our example. That being said, this isn’t the most reliable method, and is intended to provide a simple example with minimal equipment.  If you are having difficulties moving your simulated Husky, try using <code class="western">rostopic echo /husky/cmd_vel</code> to verify some commands are in fact being sent to Husky when you touch the pins.</p>
<p>Be sure to go through the rest of our ROS tutorials on our <a href="http://support.clearpathrobotics.com/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">knowledge base</a>. If you want to learn more about rosserial, be sure to visit the rosserial page of the <a href="http://wiki.ros.org/rosserial" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">ROS wiki</a>.</p>
<p>Looking for other Clearpath tutorials? You might like <a href="http://robohub.org/archives/authors/clearpath-robotics/" data-wpel-link="internal">these ones</a>! Or visit <a title="support" href="http://www.support.clearpathrobotics.com/" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">www.support.clearpathrobotics.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Tweet to drive a robot!</title>
		<link>https://robohub.org/tweet-to-drive-a-robot/</link>
		
		<dc:creator><![CDATA[Clearpath Robotics]]></dc:creator>
		<pubDate>Fri, 13 Jun 2014 20:04:01 +0000</pubDate>
				<category><![CDATA[education]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[Clearpath Robotics]]></category>
		<category><![CDATA[entertainment]]></category>
		<category><![CDATA[Husky]]></category>
		<guid isPermaLink="false">http://robohub.org/?p=33052</guid>

					<description><![CDATA[Happy Birthday!! Clearpath is officially 5 years old and what better way to celebrate than let all of our fans drive a robot. No matter where you are in the world, you can experience what it’s like to drive Husky – well, a very mini, hacked-together Husky that is. We’ve put together ‘twit-bot’ for your [&#8230;]]]></description>
										<content:encoded><![CDATA[<img decoding="async" class="alignleft  wp-image-33053" alt="tweetbot" src="http://robohub.org/wp-content/uploads/2014/06/tweetbot-425x212.jpg" width="340" height="170" srcset="https://robohub.org/wp-content/uploads/2014/06/tweetbot-425x212.jpg 425w, https://robohub.org/wp-content/uploads/2014/06/tweetbot-500x250.jpg 500w, https://robohub.org/wp-content/uploads/2014/06/tweetbot.jpg 520w" sizes="(max-width: 340px) 100vw, 340px" />
<p>Happy Birthday!! Clearpath is officially 5 years old and what better way to celebrate than let all of our fans drive a robot. No matter where you are in the world, you can experience what it’s like to drive Husky – well, a very mini, hacked-together Husky that is. We’ve put together ‘twit-bot’ for your enjoyment so you can move our bot around all from the convenience of your smartphone using Twitter.</p>
<h2>Here’s how it works:</h2>
<p>Step 1: Mention Clearpath’s Twitter handle (<a title="CPR Twitter" href="http://twitter.com/clearpathrobots" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">@ClearpathRobots</a>)<br />
Step 2: Hash tag #MoveRobot<br />
Step 3: Write the action you’d like it to take (examples are below)<br />
Step 4: Watch it move on the live feed: <a title="Live Moving Twitter Husky" href="http://www.twitch.tv/twitbot_cpr" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">http://www.twitch.tv/twitbot_<wbr />cpr</a><br />
Step 5: Share with your friends!</p>
<h2>How does it move?</h2>
<p>This little twit-bot can go just about anywhere and in any direction using the commands below (case insensitive).  The delay between the tweet and the streaming is about 30 seconds:</p>
<ul>
<li>“forward” or “fwd”</li>
<li>“backward” or “bck”</li>
<li>“right” or “rght”</li>
<li>“left” or “ft”</li>
<li>“stop” or “stp”</li>
</ul>
<p>You can also tweet colors to change the colors of the LED lights: blue, red, white, etc.</p>
<div>Of course, there are some hidden key words – easter eggs – in there too that you’ll just have to figure out on your own. I wonder if pop-a-wheelie is on the list?…</div>
<div class="divideronpost"></div>
<p><em>If you liked this article, you may also be interested in Clearpath&#8217;s ROS 101 Tutorials:</em></p>
<ul>
<li><a href="http://robohub.org/ros-101-intro-to-the-robot-operating-system/" data-wpel-link="internal">ROS 101: Intro to the Robot Operating System</a></li>
<li><a href="http://robohub.org/ros-101-a-practical-example/" data-wpel-link="internal">ROS 101: A practical example</a></li>
<li><a href="http://robohub.org/ros-101-drive-a-husky/" data-wpel-link="internal">ROS 101: Drive a Husky!</a></li>
</ul>
<p><em>See all <a href="http://robohub.org/" data-wpel-link="internal">the latest robotics news</a> on Robohub, or <a href="http://eepurl.com/t-UEf" data-wpel-link="external" target="_blank" rel="follow external noopener noreferrer">sign up for our weekly newsletter</a>.</em></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>ROS 101: Drive a Husky!</title>
		<link>https://robohub.org/ros-101-drive-a-husky/</link>
		
		<dc:creator><![CDATA[Clearpath Robotics]]></dc:creator>
		<pubDate>Fri, 21 Mar 2014 15:08:00 +0000</pubDate>
				<category><![CDATA[education]]></category>
		<category><![CDATA[Clearpath Robotics]]></category>
		<category><![CDATA[Husky]]></category>
		<category><![CDATA[ROS]]></category>
		<category><![CDATA[ROS101 Tutorial]]></category>
		<category><![CDATA[Simulation]]></category>
		<category><![CDATA[tutorial]]></category>
		<guid isPermaLink="false">http://robohub.org/?p=29235</guid>

					<description><![CDATA[In the previous ROS 101 post, we showed how easy it is to get ROS going inside a virtual machine, publish topics and subscribe to them. If you haven’t had a chance to check the out all the previous ROS 101 tutorials, you may want to do so before we go on. In this post, we’re [&#8230;]]]></description>
										<content:encoded><![CDATA[<img decoding="async" src="http://robohub.org/wp-content/uploads/2014/01/ROS101.jpg" alt="ROS101_Clearpath" width="520" height="260" class="alignnone size-full wp-image-26299" srcset="https://robohub.org/wp-content/uploads/2014/01/ROS101.jpg 520w, https://robohub.org/wp-content/uploads/2014/01/ROS101-300x150.jpg 300w, https://robohub.org/wp-content/uploads/2014/01/ROS101-500x250.jpg 500w" sizes="(max-width: 520px) 100vw, 520px" />
<p>In<a href="http://robohub.org/ros-101-a-practical-example/" target="_blank" data-wpel-link="internal"> the previous ROS 101 post</a>, we showed how easy it is to get ROS going inside a virtual machine, publish topics and subscribe to them. If you haven’t had a chance to check the out all the previous <a href="http://robohub.org/tag/ros101-tutorial/" target="_blank" data-wpel-link="internal">ROS 101</a> tutorials, you may want to do so before we go on. In this post, we’re going to drive a Husky in a virtual environment, and examine how ROS passes topics around.<br />
<span id="more-29235"></span></p>
<p>An updated version of the Learn_ROS disk is available here:</p>
<p><a title="Public Learn ROS Disk" href="https://s3.amazonaws.com/CPR_PUBLIC/LEARN_ROS/Learn_ROS-disk1.vmdk.gz" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">https://s3.amazonaws.com/CPR_PUBLIC/LEARN_ROS/Learn_ROS-disk1.vmdk</a><br />
<a title="Public Learn ROS ovf" href="https://s3.amazonaws.com/CPR_PUBLIC/LEARN_ROS/Learn_ROS.ovf" target="_blank" data-wpel-link="external" rel="follow external noopener noreferrer">https://s3.amazonaws.com/CPR_PUBLIC/LEARN_ROS/Learn_ROS.ovf</a></p>
<p>Login (username): user<br />
Password: learn</p>
<p>If you just downloaded the updated version above, please skip the next section. If you have already downloaded it, or are starting from a base install of ROS, please follow the next section.</p>
<h2><strong>Updating the Virtual Machine</strong></h2>
<p>Open a terminal window (Ctrl + Alt + T), and enter the following:</p>
<pre><code>sudo apt-get update
sudo apt-get install ros-hydro-husky-desktop</code></pre>
<h2><strong>Running a virtual Husky</strong></h2>
<p>Open a terminal window, and enter:</p>
<pre><code>roslaunch husky_gazebo husky_empty_world.launch</code></pre>
<p>Open another terminal window, and enter:</p>
<pre><code>roslaunch husky_viz view_robot.launch</code></pre>
<p>You should be given two windows, both showing a yellow, rugged robot (the Husky!)</p>
<a href="http://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_34_30.png" data-wpel-link="internal"><img decoding="async" class="wp-image-29240" alt="Screenshot-from-2014-03-14-07_34_30" src="http://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_34_30.png" width="1534" height="797" srcset="https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_34_30.png 1534w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_34_30-425x220.png 425w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_34_30-1024x532.png 1024w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_34_30-500x259.png 500w" sizes="(max-width: 1534px) 100vw, 1534px" /><br /></a>
<p>&nbsp;</p>
<p>The first window shown is Gazebo. This is where we get a realistic simulation of our robot, including wheel slippage, skidding, and inertia. We can add objects to this simulation, such as the cube above, or even entire maps of real places.</p>
<a href="http://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_35_36.png" data-wpel-link="internal"><img decoding="async" class="wp-image-29239" alt="Screenshot-from-2014-03-14-07_35_36" src="http://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_35_36.png" width="1537" height="905" srcset="https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_35_36.png 1537w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_35_36-425x250.png 425w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_35_36-1024x602.png 1024w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-07_35_36-500x294.png 500w" sizes="(max-width: 1537px) 100vw, 1537px" />
<p></a></p>
<p>The second window is RViz. This tool allows us to see sensor data from a robot, and give it commands (We&#8217;ll talk about how to do this in a future post). RViz is a more simplified simulation in the interest of speed.</p>
<p>We can now command the robot to go forwards. Open a terminal window, and enter:</p>
<pre><code>rostopic pub /husky/cmd_vel geometry_msgs/Twist -r 100 '[0.5,0,0]' '[0,0,0]'</code></pre>
<p>In the above command, we publish to the /husky/cmd_vel topic, of topic type geometry_msgs/Twist, at a rate of 100Hz. The data we publish tells the simulated Husky to go forwards at 0.5m/s, without any rotation. You should see your Husky move forwards. In the gazebo window, you might notice simulated wheel slip, and skidding.</p>
<h2><strong>Using rqt_graph</strong></h2>
<p>We can also see the structure of how topics are passed around the system. Leave the publishing window running, and open a terminal window. Type in:</p>
<pre><code>rosrun rqt_graph rqt_graph</code></pre>
<p>This command generates a representation of how the nodes and topics running on the current ROS Master are related. You should get something similar to the following:</p>
<a href="http://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-08_10_25.png" data-wpel-link="internal"><img decoding="async" class="wp-image-29238" alt="Screenshot-from-2014-03-14-08_10_25" src="http://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-08_10_25.png" width="1426" height="645" srcset="https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-08_10_25.png 1426w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-08_10_25-425x192.png 425w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-08_10_25-1024x463.png 1024w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-14-08_10_25-500x226.png 500w" sizes="(max-width: 1426px) 100vw, 1426px" />
<p></a></p>
<p>&nbsp;</p>
<p>The highlighted node and arrow show the topic that you are publishing to the simulated Husky. This Husky then goes on to update the gazebo virtual environment, which takes care of movement of the joints (wheels) and the physics of the robot. The rqt_graph command is very handy to use, when you are unsure who is publishing to what in ROS. Once you figure out what topic you are interested in, you can see the content of the topic using rostopic echo.</p>
<h2><strong>Using tf</strong></h2>
<p>In Ros, tf is a special topic that keeps track of coordinate frames, and how they relate to each other. So, our simulated Husky starts at (0,0,0) in the world coordinate frame. When the Husky moves, it’s own coordinate frame changes. Each wheel has a coordinate frame that tracks how it is rotating, and where it is. Generally, anything on the robot that is not fixed in space, will have a tf describing it. In the rqt_graph section, you can see that the /tf topic is published to and subscribed from by many different nodes.</p>
<p>One intuitive way to see how the tf topic is structured for a robot is to use the view_frames tool provided by ROS. Open a terminal window. Type in:</p>
<pre><code>rosrun tf2_tools view_frames.py
</code></pre>
<p>Wait for this to complete, and then type in:</p>
<pre><code>evince frames.pdf</code></pre>
<p>This will bring up the following image.</p>
<p><a href="http://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-18-12_20_59.png" data-wpel-link="internal"><img decoding="async" class="wp-image-29237" alt="Screenshot-from-2014-03-18-12_20_59" src="http://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-18-12_20_59.png" width="1664" height="571" srcset="https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-18-12_20_59.png 1664w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-18-12_20_59-425x145.png 425w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-18-12_20_59-1024x351.png 1024w, https://robohub.org/wp-content/uploads/2014/03/Screenshot-from-2014-03-18-12_20_59-500x171.png 500w" sizes="(max-width: 1664px) 100vw, 1664px" /></a>Here we can see that all four wheel are referenced to the base_link, which is referenced from the base_frootprint. (Toe bone connected to the foot bone, the foot bone….). We also see that the odom topic is driving the reference of the whole robot. This means that if you write to the odom topic (IE, when you publish to the /cmd_vel topic) then the whole robot will move.</p>
<div>
<div></div>
<p><em>See all the ROS101 tutorials <a href="http://robohub.org/tag/ros101-tutorial/" data-wpel-link="internal">here</a>. If you liked this article, you may also be interested in:</em></p>
<ul>
<li><a href="http://robohub.org/up-and-flying-with-the-ar-drone-and-ros-getting-started/" data-wpel-link="internal">Up and flying with the AR.Drone and ROS: Getting started</a></li>
<li><a href="http://robohub.org/taking-your-first-steps-in-robotics-with-the-thymio-ii/" data-wpel-link="internal">Taking your first steps in robotics with the Thymio II</a></li>
<li><a title="Permalink to Discovering social robotics with the Aisoy1" href="http://robohub.org/discovering-social-robotics-with-the-aisoy1/" rel="bookmark" data-wpel-link="internal">Discovering social robotics with the Aisoy1</a></li>
<li><a title="Permalink to Parrot AR.Drone app harnesses crowd power to fast-track vision learning in robotic spacecraft" href="http://robohub.org/parrot-ar-drone-app-harnesses-crowd-power-to-fast-track-vision-learning-in-robotic-spacecraft/" rel="bookmark" data-wpel-link="internal">Parrot AR.Drone app harnesses crowd power to fast-track vision learning in robotic spacecraft</a></li>
</ul>
<p><em>See all <a href="http://robohub.org/" data-wpel-link="internal">the latest robotics news</a> on Robohub, or <a title="" href="http://eepurl.com/t-UEf" target="_blank" rel="external nofollow noopener noreferrer" data-wpel-link="external">sign up for our weekly newsletter</a>.</em></p>
</div>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 

Served from: robohub.org @ 2026-10-23 22:56:47 by W3 Total Cache
-->