tag:blogger.com,1999:blog-1409654809690469042Sat, 05 Aug 2017 23:13:31 +0000videoROSroboticsprojectsmechanicalPRsoftwarecomputer visionI Heart EngineeringawesomenesselectricalKinectTurtleBotarduino3D Printerwillow garage3d sensorPlaybackvideostutorialscool tooldiyaerialNational Robotics WeekquadrotorjapanpartsIn StocksensortoolsprogrammingPR2contestopensourceuavnewsdesign ideastestingarmlaboratory supplieslasermechanismrandomAUVSISLAMThis New Labcontrolcrash testdissectionTurtleBot 2caddraganflyerinfraredmicromouseparallel manipulatorsAUVPartyThingiverseTips and Tricksappendagesfastenershardwarehumanoidopencvprototypingtelepresencething-a-weekubuntuA CaseOpenSCADPixHawkcompetitionimuirobotmanipulatormetarobotics frameworktaipeitaiwanunderwaterwalkingAndroidOpenNIcasedocumentationelectronicsground stationlaser cutterlinuxmavphotospic microcontrollerreviewroundupservoRGB-DRovioanaglyphmakingmovienycpersonal roboticsrantresourcesscrewstereoscopicCMU Robotics ClubIGVCMusicOpen manufacturingROSConVision for RobotsbookengineeringgiftsgumstixgundamhackingplasticprogresssciencesecuritytelemetryturretwebcamBEAMBeagleBoardBilibotCall for PapersDownlinkHEXBUGHokuyoI will need this somedayISOPlease Secure Your RobotPrimeSenseQR CodeQoLTROBO-ONERovio HackingXtionarmatronartaugmented realitycellbotscellularcleanroomconferencecontinuum roboticsheadsindustrial designmanufacturingmath math mathmicrocontrollerserial ports sucksimulationtalkteleoperationthing-a-monthtirosvoice recognition3D mapping6DoFADKBostonBusiness modelsCNCEntertainmentFarmingGostaiKillbotsNXTNaoPCLPGHPIDPSDKPro/ERoombaUpgradebattle botsbloggingeventsgazebogood toolsgpsgripperhapticjobslinkslogitechmagazinemerchmotornetbookoctreeomplrandom toolssUASscrew cuttersnowstandardssurface mountt-shirtthing-a-dayugvupdatezmp.edu3D scannerBYOTBeagle BoneColony ProjectDSO NanoFIRSTHizookI am stealing this ideaICRAIt's not just thermodynamics it's the lawMITNASAOSHWOSXOctomapOpenRAVEPower managementTexaiUnder the HoodUploadUrbiaprilarm microcontrollerassitive technologyavrbarcodebatteriesbureaucratic necromancycalibrationcircuit boardscombatconstructiondemodesktop debrisdo not modifydsperrorethernetethicsfashionfiregraspinghome assistanceiheart-ros-pkgindustrialinterruptiroslaser cuttinglensesmagneticmaidmobile roboticsmotion planningnavigationpower transmissionproof of conceptrangefinderrindsafetyserialtraveltroubleshootingusbwirelessロボット1+1=101:12D scannerAR.DroneASVAccessoriesAckermann steeringAkihibaraArduPilotAscTecBrian GerkeyBrooklynCall for ParticiantsCall for VideosCeci n'est pas une pipeCuriosityDARwIn-OPDestroy all humansETHZEntertainment. ROBO-ONEFAAFreeBSDGPLGeneration RobotsGermanHCIHackathonHalloweenHomebrew Robotics ClubIANALIARCIEEEIndonesiaIntelJAUSKiCADLIDARMDFMEMsMRPTMakerBotMarsMinGWMobotsNRINYCTOGNeatoNew AestheticNo SleepOSRFPaintPartKeeprPixel QiPythonRS-485RVizRadioShackRandom ThoughtsRoMeLaRoboCarRoboCupRoboEarthRobonautRobotBoxSTARMACShared memoriesSilicon ValleySpimeSpray PaintSuperDroid RobotsSurface VehicleTaxonomyTowards a Metric AmericaUnity sucksUnsortedVCVirgina TechYMTAZurichaccretion of hacksacrylicadafruitadapteradhesionafbanybotsas t goes to infinity the probability goes to 1astromechbad toolsbeachbehaviorsberlinblegboardbreakfastbusinesscablescastingcaution this robot can climb stairsceramicschainchemistrycircuitcleaningco-op modecoffeecomicscommunicationsconcretecrashingcross compilingcuttercyber cyber cyberdatasheetsdazzledeepoodesigndigital manufacturingdooreagleecadeeeelectricaI Heart Engineeringengravefailurefastenerflat patternfloating point madnessfoam. millingfrancefrenchfundinggesturesglockenspielgraffitihackerspaceheatedhigh schoolhistoryhough transformi-SobotiCubinjectioninsertsinternetinterviewkalman filterkickstarterllaptoplazylegacylegallelyline followinglocklocomotionlogomagnetometermappingmaterialsmeshmicroscopemillingmilspecmoldingmore bandwidthmulti-leggedmulti-robotmutationsn900nerfnetsnetworknfcold skewlopen hardwareopportunity for repairoveropackagingpapersparachutepeopleperceptionplantplayerpollpre-announcementpredatorpretty windmillsquadrupedraspberry pirasterrcireprapresearchreverse engineeringrfidrobOrchestrarobosubrobots without securityrubbersemi-humanoidsheet metalsoccersolidworkssonarspicesprocketstagestartupstrippersstructuralstupiditysupportsurveysvntabletteathreadedtrafficuniversalunstructured environmentvacationvisualizationvp8wheelwifiwin-ros-pkgworkshopマイドI Heart RoboticsA blog about robotics and engineering. News and information about projects related to robotics.http://www.iheartrobotics.com/noreply@blogger.com (I Heart Robotics)Blogger852125tag:blogger.com,1999:blog-1409654809690469042.post-787563078524564411Sat, 14 Sep 2013 13:07:00 +00002013-09-14T09:18:06.541-04:00TurtleBot Hydro ISO Alpha 2Progress continues.<br /><br /><a href="http://data.iheartengineering.com/turtlebot-hydro-ubuntu-12.04.2-alpha2.iso">http://data.iheartengineering.com/turtlebot-hydro-ubuntu-12.04.2-alpha2.iso</a><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/FzSMzR-yiWk" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/FzSMzR-yiWk/turtlebot-hydro-iso-alpha-2.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/09/turtlebot-hydro-iso-alpha-2.htmltag:blogger.com,1999:blog-1409654809690469042.post-7049024271874394219Fri, 06 Sep 2013 17:13:00 +00002013-09-06T14:00:28.779-04:00ISOROSsoftwareTurtleBot 2ROS Hydro Released + TurtleBot Hydro ISO Alpha<div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-e25xqIYjQhg/UioLeISDE7I/AAAAAAAADC8/nNl5OyBxrZg/s1600/hydrologin.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="https://lh3.ggpht.com/-e25xqIYjQhg/UioLeISDE7I/AAAAAAAADC8/nNl5OyBxrZg/s1600/hydrologin.jpg" width="640" /></a></div><pre wrap="">&nbsp;</pre><pre wrap=""></pre><a href="http://lists.ros.org/pipermail/ros-users/2013-September/067926.html">ROS Hydro Medusa has been release</a> and we are close behind with an alpha release of the TurtleBot Hydro ISO Installer and we are hoping for a beta early next week.<br /><br /><pre wrap=""></pre><pre wrap=""><a class="moz-txt-link-freetext" href="http://data.iheartengineering.com/turtlebot-hydro-ubuntu-12.04.2-alpha1.iso">http://data.iheartengineering.com/turtlebot-hydro-ubuntu-12.04.2-alpha1.iso</a></pre><pre wrap="">&nbsp;</pre><pre wrap="">UPDATE: Problem with DNS propagation</pre><pre wrap="">adding this to your /etc/hosts should work for now</pre><pre wrap="">66.228.47.240 data.iheartengineering.com</pre><pre wrap=""></pre><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/16hPjvpyQ9g" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/16hPjvpyQ9g/ros-hydro-released-turtlebot-hydro-iso.htmlnoreply@blogger.com (I Heart Robotics)2http://www.iheartrobotics.com/2013/09/ros-hydro-released-turtlebot-hydro-iso.htmltag:blogger.com,1999:blog-1409654809690469042.post-2184581659218263965Mon, 29 Jul 2013 16:57:00 +00002013-08-01T12:12:48.587-04:00Turtlebot Wanderer<span style="font-family: Times,&quot;Times New Roman&quot;,serif;">The Wanderer program allows the turtlebot to move around randomly while avoiding any nearby objects.&nbsp; Using the attached Xbox Kinect, the robot reads its <a href="http://www.ros.org/doc/api/sensor_msgs/html/msg/LaserScan.html" target="_blank">laserscan</a> messages and determines if there are any obstacles closer than 0.6 meters.&nbsp; If there are none, it moves forward.&nbsp; If it does detect any obstacles, it rotates away from them and then continues moving forward.</span><br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-zJ1sQAzpAp8/UfqI1sWfxHI/AAAAAAAAAC8/rOSUb8QobBU/s1600/IMG_5455.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="http://3.bp.blogspot.com/-zJ1sQAzpAp8/UfqI1sWfxHI/AAAAAAAAAC8/rOSUb8QobBU/s320/IMG_5455.JPG" width="179" /></a></div><div class="separator" style="clear: both; text-align: center;"></div><div style="text-align: center;"><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><span style="font-size: x-small;">Turtlebot2 used with <span style="font-size: x-small;">Wanderer to carry arou<span style="font-size: x-small;">nd drink<span style="font-size: x-small;">s</span></span></span></span></span></div><h3><i><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><span style="font-size: small;">Scan_msg class</span></span></i></h3><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">Much of this program depends on a class called <code>Scan_msg</code>.&nbsp; At it's initialization, a Scan_msg object creates a publisher, <code>pub</code>, for twist messages, variable <code>msg</code> to hold the twist message, variables <code>sect_1</code>, <code>sect_2</code>, and <code>sect_3</code>, and 3 dictionaries - <code>ang</code>, <code>fwd</code>, and <code>dbgmsg</code>- to hold the angular speed, linear speed, and debug message for each possible instance, respectively.</span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">Variables <code>sect_1</code>, <code>sect_2</code>, and <code>sect_3 </code> each represent a specific part of the field of view of the turtlebot (see image below).&nbsp;</span><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-lhJ0cV96hjY/Uff5nF-MwLI/AAAAAAAAACQ/r1jsYml0AqQ/s1600/Screenshot+from+2013-07-30+13:32:42.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="271" src="https://lh3.ggpht.com/-lhJ0cV96hjY/Uff5nF-MwLI/AAAAAAAAACQ/r1jsYml0AqQ/s320/Screenshot+from+2013-07-30+13:32:42.png" width="320" /><span style="background-color: white;"><span style="color: white;">&nbsp;</span></span></a></div><div class="separator" style="clear: both; text-align: center;"><span style="font-family: Times, &quot;Times New Roman&quot;, serif;"><span style="font-size: x-small;">Ill<span style="font-size: x-small;">ustration of <span style="font-size: x-small;">turtle<span style="font-size: x-small;">bot field of view</span></span></span></span></span></div><div class="separator" style="clear: both; text-align: center;"><span style="font-family: Times, &quot;Times New Roman&quot;, serif;"><span style="font-size: x-small;"><span style="font-size: x-small;"><span style="font-size: x-small;"><span style="font-size: x-small;">&nbsp;</span></span></span></span></span> </div><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">The two main functions of this class are <code>sort()</code> and <code>movement()</code>.&nbsp;</span><br /><div style="text-align: left;"></div><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><code>sort()</code> takes in a laserscan message and goes through all the ranges read by the robot.&nbsp; If any of the ranges is less than 0.6 m (an obstacle is detected), it determines which section of the field of view (<code>sect_1</code>, <code>sect_2</code>, or <code>sect_3</code>) the obstacle is located in and changes the value of that&nbsp; section to 1.&nbsp;&nbsp;&nbsp; <br />&nbsp;</span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><code>movement()</code>&nbsp; takes in the values of <code>sect_1</code>, <code>sect_2</code>, and <code>sect_3</code> and uses them to determine how to move.&nbsp; To do this, it creates a number with the values of these 3 variables and assigns that number to the&nbsp; variable <code>sect</code>.&nbsp; <code>sect</code> is then used with the class dictionaries to change the angular and linear velocities&nbsp; of msg to the proper values and display the correct debug message.&nbsp; Finally, <code>movement()</code> published this modified twist message</span><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"> (see code below)</span>.</span><br /><blockquote class="tr_bq"><pre>sect = int(str(self.sect_1) + str(self.sect_2) + str(self.sect_3))<br />self.msg.angular.z = self.ang[sect]<br />self.msg.linear.x = self.fwd[sect]<br />rospy.loginfo(self.dbgmsg[sect])<br />self.pub.publish(self.msg)&nbsp; </pre></blockquote><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">Finally, the <code>reset_sect()</code> function is run to reset the values of <code>sect_1</code>, <code>sect_2</code>, and <code>sect_3</code> to 0.&nbsp;</span> <span style="font-family: Times,&quot;Times New Roman&quot;,serif;">&nbsp;</span><br /><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">The function <code>for_callback()</code> takes in a laserscan message and runs both of the above functions.</span><i><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><span style="font-size: small;">&nbsp;</span></span></i><br /><br /><span style="font-size: small;"><span style="font-family: Times, &quot;Times New Roman&quot;, serif;"><i><b>listener() and call_back functions</b></i></span></span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">The <code>listener()</code> function first initializes the node <code>navigation_sensors</code>, and then creates a subscriber with callback function <code>call_back()</code>.&nbsp; <code>call_back()</code> takes a Scan_msg object and passes the laserscan message to the class function <code>for_callback()</code>.</span><span style="font-family: Times,&quot;Times New Roman&quot;,serif; font-size: small;"><i>&nbsp;</i></span><br /><br /><b><span style="font-family: Times,&quot;Times New Roman&quot;,serif; font-size: small;"><i>Overview</i></span></b><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">&nbsp;</span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">At the start of this program, a Scan_msg object called <code>sub_obj</code> is created.&nbsp; <code>listener()</code> is then run, starting the subscriber, which passes a laserscan message to the <code>call_back()</code> function.&nbsp; <code>call_back()</code> passes the laserscan message to <code>sub_obj</code>'s <code>for_callback()</code> function.&nbsp; <code>for_callback()</code> first runs <code>sort()</code>, which updates variables <code>sect_1</code>, <code>sect_2</code>, and <code>sect_3</code> accordingly, then passes these updated variables to <code>movement()</code> which uses them to determine where to go, updates the class twist message, and publishes that message.&nbsp; This process repeats for each laserscan message.</span><span style="font-family: Times,&quot;Times New Roman&quot;,serif; font-size: small;"><i>&nbsp;</i></span><br /><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif; font-size: small;"><i><b>App Chooser</b> </i></span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">Wanderer was also added as an additional feature to&nbsp; App Chooser (for android).&nbsp; In order to do this, I wrote files wanderer.launch, wanderer.interface, and wanderer.app and added a wanderer_icon.jpeg (for the icon) in a folder called wanderer_app.&nbsp; The interface file lists any publishers and subscribers.&nbsp; In the wanderer app, there were none.&nbsp; The launch file defines a single node, "navigation_sensors" from the wanderer.py program (see below).</span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">&lt;launch&gt;</span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">&nbsp;&nbsp; &lt;node name="navigation_sensors" pkg ="navigation_sensors" type="wanderer.py" cwd="node"/&gt;&lt;/launch&gt;</span> <span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><span style="font-size: small;">&nbsp;</span></span><br /><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><span style="font-size: small;">Lastly, the app file defines a few attributes of the app and also gives the package/name of the other files and image.&nbsp; In order to add this app to App Chooser, I edited the file turtlebot_apps.installed to include the wanderer app<span style="font-size: small;"><span style="font-size: small;">.</span> </span></span></span><br /><blockquote class="tr_bq"><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-CZDAcJGPZyE/Ufa8vSM7rKI/AAAAAAAAACA/QsQhhEiRXPA/s1600/Screenshot_2013-07-29-18-42-30.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="250" src="https://lh3.ggpht.com/-CZDAcJGPZyE/Ufa8vSM7rKI/AAAAAAAAACA/QsQhhEiRXPA/s400/Screenshot_2013-07-29-18-42-30.png" width="400" /></a></div><div style="text-align: center;"><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">&nbsp;Wanderer appears on the far right along with the other apps in App Chooser</span></div></blockquote><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">All source code available at:&nbsp;</span><br /><a href="https://github.com/IHeartEngineering/ihe_turtlebot_wander"><span style="font-family: Times,&quot;Times New Roman&quot;,serif;">https://github.com/IHeartEngineering/ihe_turtlebot_wander</span></a><br /><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"></span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"></span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"></span><br /><span style="font-family: Times,&quot;Times New Roman&quot;,serif;"><iframe allowfullscreen="" frameborder="0" height="360" src="//www.youtube.com/embed/lStLiZJy8oQ" width="640"></iframe><iframe allowfullscreen="" frameborder="0" height="360" src="//www.youtube.com/embed/WfLKibhvNwg" width="640"></iframe></span><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/bnk-9euzcgg" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/bnk-9euzcgg/turtlebot-wanderer.htmlnoreply@blogger.com (Mahreen Ijaz)1http://www.iheartrobotics.com/2013/07/turtlebot-wanderer.htmltag:blogger.com,1999:blog-1409654809690469042.post-5646651128576787538Wed, 24 Jul 2013 15:56:00 +00002013-07-24T11:56:03.856-04:00ROS Hydro Beta and T-ShirtsNow returning to our regularly scheduled programming.<br /><br />ROS Hydro Beta 1 is now <a href="http://www.ros.org/news/2013/07/announcing-ros-hydromedusa-beta-release.html">ready for testing</a>. We also expect to have an ISO for the TurtleBot ready by the end of August.<br /><br />Limited edition ROS Hydro T-Shirts are also <a href="http://teespring.com/ros_hydro_medusa">available</a>.<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/ZOMgeqHj8B4" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/ZOMgeqHj8B4/ros-hydro-beta-and-t-shirts.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/07/ros-hydro-beta-and-t-shirts.htmltag:blogger.com,1999:blog-1409654809690469042.post-828668653008265448Mon, 27 May 2013 09:07:00 +00002013-05-27T05:07:55.740-04:00roboticstalkTurtleBotHvernig segir maður robot á íslensku?<div class="almost_half_cell" id="gt-res-content"><div dir="ltr" style="zoom: 1;"><span class="short_text" id="result_box" lang="is"><span class="hps">TurtleBot</span> <span class="hps">tala</span> <a href="https://www.facebook.com/events/211579438989835/"><span class="hps">í</span> <span class="hps">Reykjavík</span></a><span class="">.</span></span></div></div><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/Pn2m_iW_6R0" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/Pn2m_iW_6R0/hvernig-segir-maur-robot-islensku.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/05/hvernig-segir-maur-robot-islensku.htmltag:blogger.com,1999:blog-1409654809690469042.post-3173307368537798389Sun, 19 May 2013 09:50:00 +00002013-05-20T14:08:07.380-04:00demohackerspaceroboticstalkTurtleBot 2Robotbespreking in Amsterdam<span class="" id="result_box" lang="nl"><span class="hps"><a href="http://wiki.techinc.nl/index.php/Social:2013-05-22">Woensdag 22 mei</a> geef ik een korte lezing over Open Source robotica en zal ik onze Turtlebot demonstreren.&nbsp; </span></span><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/kx6ylSjzNek" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/kx6ylSjzNek/robotbespreking-in-amsterdam.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/05/robotbespreking-in-amsterdam.htmltag:blogger.com,1999:blog-1409654809690469042.post-8322492559797195855Wed, 15 May 2013 08:05:00 +00002013-05-15T04:05:57.032-04:00berlinroboticstalkRoboter erzählen und demonstrieren in Berlin<a href="https://berlin.ccc.de/wiki/Open_Source_Robotics">Datengarten</a>: 16. Mai, 20 Uhr.<pre wrap="">&nbsp;</pre><pre wrap=""><br /></pre><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/63wMLBA-se0" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/63wMLBA-se0/roboter-erzahlen-und-demonstrieren-in.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/05/roboter-erzahlen-und-demonstrieren-in.htmltag:blogger.com,1999:blog-1409654809690469042.post-3044118442827762656Mon, 06 May 2013 06:00:00 +00002013-05-06T02:00:57.642-04:00demoPRTurtleBotTurtleBot 2European Demo Month<pre wrap="">May is European demo month!</pre><pre wrap="">&nbsp;</pre><pre wrap=""><a href="http://www.iheartengineering.com/">I Heart Engineering</a> will be at <a href="http://roscon.ros.org/">ROSCon</a> in Stuttgart, Germany on May<br />11th and 12th. Any organizations located in Benelux, Germany, or the Czech Republic and<br />interested in a demo of the TurtleBot 2 during the month of May should email<br />sales@iheartengineering.<br /><br />We are especially interested in presenting to Hackerspaces and commercial or academic robotics labs.</pre><pre wrap="">&nbsp;</pre><pre wrap=""><br /></pre><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/yqN9jM7tsus" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/yqN9jM7tsus/european-demo-month.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/05/european-demo-month.htmltag:blogger.com,1999:blog-1409654809690469042.post-6917352369740557628Tue, 09 Apr 2013 16:43:00 +00002013-04-09T12:43:46.990-04:00IEEENational Robotics WeeksoftwareFree Robot App from IEEE Robotics and Automation SocietyWhile iPad owners have not been able to run many of the <a href="https://play.google.com/store/apps/details?id=org.ros.android.android_app_chooser">latest robot apps</a>, the IEEE Robotics and Automation Society is sponsoring free downloads of the <a href="http://spectrum.ieee.org/automaton/robotics/robotics-software/robots-app-is-free-during-national-robotics-week">IEEE Robot App</a> during National Robotics Week.<br /><br />This app has specifications, videos and photos of over 100 robots and is a great reference.<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/ixoIVyzzzUQ" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/ixoIVyzzzUQ/free-robot-app-from-ieee-robotics-and.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/04/free-robot-app-from-ieee-robotics-and.htmltag:blogger.com,1999:blog-1409654809690469042.post-6179233512298204615Fri, 05 Apr 2013 15:09:00 +00002013-04-05T11:10:40.506-04:00eventsNational Robotics WeeknycPartyNational Robotics Week 2013It's that time of the year again, from April 6-14 we will be celebrating <a href="http://nationalroboticsweek.org/">National Robotics Week</a>. If you want to meet up, this year we will be at this event in NYC on Tuesday April 9<br /><br /><hr /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-VeMdJaZSfTM/UV7nQntYH6I/AAAAAAAAC_s/Ha2LwgPuA_g/s1600/nycrw2013.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="458" src="https://lh3.ggpht.com/-VeMdJaZSfTM/UV7nQntYH6I/AAAAAAAAC_s/Ha2LwgPuA_g/s1600/nycrw2013.jpg" width="640" /></a></div><br />Honeybee Robotics, Huge, and the NYC Economic Development Corporation are organizing a National Robotics Week meetup here in New York on April 9.<br /><br />Researchers, developers and enthusiasts are gathering for an evening of presentations, live demonstrations and inspired discussion. The theme: New Frontiers in Robotics: Extending the possible. It's a chance to learn about -- and see firsthand -- how machines built and used in New York City are transcending simple automation, instead enhancing new capabilities and enabling discoveries.<br /><br />What: Presentations and demonstrations of leading robotics R&amp;D from New York City<br />Where: HUGE, Inc -- 45 Main St, Suite 220, Brooklyn<br />When: Tuesday, April 9, 7-10pm<br />Why: To learn, to share, to show off some cool homegrown robots<br /><br />The program is listed at <a href="http://nycroboticsweek.com/">http://nycroboticsweek.com/</a>. RSVP required.<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/u2_3h4HxbBI" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/u2_3h4HxbBI/national-rbotics-week-2013.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/04/national-rbotics-week-2013.htmltag:blogger.com,1999:blog-1409654809690469042.post-4502037869689550299Fri, 22 Mar 2013 01:09:00 +00002013-03-25T12:16:12.590-04:00adafruitarduinocircuitcommunicationsdoorelectronicsethernetlocknfcrcirfidRFID Door - 1 of nOften times an office finds the struggle of granting access to rooms without jeopardizing physical copies of keys. These struggles can be easily overcome with technologies such as facial recognition, finger print recognition, bar codes, radio frequency identification, and much more.<br />Here at <i>I Heart Engineering</i>, we felt the need to have awesome badges fit our daily attire, where we can have both style and access to our offices without the need of weighty keys by building a robot door.<br /><br />Using the <a href="http://store.iheartengineering.com/electronics/arduino/ihe-0210-000b-0000.html">Arduino Ethernet</a> along with Adafruit's <a href="http://www.adafruit.com/products/364">PN-532 RFID/NFC Breakout Board</a>, the badges were a mere grasp away from reality.<br /><br />A circuit involving a relay powering 12vDC@1A to a <a href="http://www.rutherfordcontrols.com/en/products/electric-strikes/6-series">RCI S65</a> electromagnetic door lock. The circuit was mounted onto an <a href="http://store.iheartengineering.com/electronics/arduino/ihe-0210-0003-0000.html">Arduino Protoboard</a> alongside a circuit connecting the PN-532 breakout board to the Arduino.<br /><br /><br /><table border="1" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><th>Part</th><th>Price</th></tr><tr><td><div style="text-align: center;"><a href="http://store.iheartengineering.com/electronics/arduino/ihe-0210-000b-0000.html">Arduino POE Ethernet</a></div></td><td><div style="text-align: center;">$69.95</div></td></tr><tr><td><div style="text-align: center;"><a href="http://www.adafruit.com/products/364">Adafruit PN-532 Breakout Board</a></div></td><td><div style="text-align: center;">$39.95</div></td></tr><tr><td><div style="text-align: center;"><a href="http://store.iheartengineering.com/electronics/arduino/ihe-0210-0003-0000.html">Arduino Proto Shield</a></div></td><td><div style="text-align: center;">$4.95</div></td></tr><tr><td><div style="text-align: center;"><a href="http://www.taylorsecurity.com/Electric%20Strikes-RCI6SeriesElectricStrike.aspx">RCI S65 Electric Strike</a></div></td><td><div style="text-align: center;">$107.00</div></td></tr><tr><td><div style="text-align: center;"><a href="http://www.digikey.com/product-detail/en/KTPS10-12010WA/62-1134-ND/2506966">100~240VAC =&gt; 12vDC@1A Power Supply</a></div></td><td><div style="text-align: center;">$11.77</div></td></tr><tr><td><div style="text-align: center;"><a href="http://www.digikey.com/product-detail/en/PCN-105D3MHZ,000/PCN-105D3MHZ%20000-ND/1427537">Tyco Electronics SPST Power Relay</a></div></td><td><div style="text-align: center;">$2.21</div></td></tr><tr><td><div style="text-align: center;">Total</div></td><td><div style="text-align: center;">$235.83*</div></td></tr></tbody></table><div style="font-size: 10px; text-align: center;">*For single components, not including tax, shipping and handling, or packaged components</div><br /><br /><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-7Eo-dQTzT2A/UVB4Ntkw5RI/AAAAAAAAAGg/vRt9QoQWaTs/s1600/rfidschematic.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="480" src="http://2.bp.blogspot.com/-7Eo-dQTzT2A/UVB4Ntkw5RI/AAAAAAAAAGg/vRt9QoQWaTs/s640/rfidschematic.png" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"></div><br />After the circuit above was tested on a breadboard, it was then put onto a protoboard and the Arduino set was completed. The speaker and variable resistor were used for key tones, hooked up to pin 7. This is not necessary, but it helps when debugging.<br /><br /><div style="text-align: center;"></div><div style="text-align: center;"><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://3.bp.blogspot.com/-aewstXqCowg/UUuTPYwObYI/AAAAAAAAAFg/w-YtoAQYPxk/s1600/rfidoor_top.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://3.bp.blogspot.com/-aewstXqCowg/UUuTPYwObYI/AAAAAAAAAFg/w-YtoAQYPxk/s640/rfidoor_top.jpg" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;"><b>Left</b>: Arduino Ethernet&nbsp;&nbsp;&nbsp;<b>Middle</b>: Protoboard w/ circuit&nbsp;&nbsp;&nbsp;<b>Right</b>: PN-532 Breakout Board</td></tr></tbody></table><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://3.bp.blogspot.com/-2r4WPIGjLS4/UUuTIYx31hI/AAAAAAAAAE4/_WaJL5Tkggs/s1600/rfid_bottom.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://3.bp.blogspot.com/-2r4WPIGjLS4/UUuTIYx31hI/AAAAAAAAAE4/_WaJL5Tkggs/s640/rfid_bottom.jpg" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Bottom-side of the protoboard and the PN-532 breakout board</td></tr></tbody></table><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://4.bp.blogspot.com/-oHprMmjgoC0/UUuTJZsMaWI/AAAAAAAAAFA/cjPlUj7aSVM/s1600/rfidoor_complete.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://4.bp.blogspot.com/-oHprMmjgoC0/UUuTJZsMaWI/AAAAAAAAAFA/cjPlUj7aSVM/s640/rfidoor_complete.jpg" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Put together into a neat package, ready for mounting<br /><br /></td></tr></tbody></table><div class="separator" style="clear: both; text-align: center;"></div></div><div style="text-align: center;"><div class="separator" style="clear: both; text-align: center;"></div></div><div style="text-align: center;"><a href="http://3.bp.blogspot.com/-tmNSXOnmRhw/UUpOfq8mMBI/AAAAAAAAAEY/9--3wZibgBE/s1600/3.JPG" style="margin-left: 1em; margin-right: 1em;"></a> <br /><div style="text-align: center;"></div><div style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"></div>Now that the Arduino package is assembled, mounting of the rfid reader takes place. Using some masking tape and wire, a rough mounting test was enacted.<br /><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://1.bp.blogspot.com/-MY1LQDIQIbQ/UUuTNPRdbvI/AAAAAAAAAFQ/13tnKNscBrc/s1600/rfidoor_hole.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto; text-align: center;"><img border="0" height="426" src="http://1.bp.blogspot.com/-MY1LQDIQIbQ/UUuTNPRdbvI/AAAAAAAAAFQ/13tnKNscBrc/s640/rfidoor_hole.jpg" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Test of mounting positions within the wall</td></tr></tbody></table><br />A square was cut out into the door frame, and the RCI S65 was installed into the door frame, then hooked up to the Arduino protoboard.<br /><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://3.bp.blogspot.com/-AoUxIkdI3tE/UUuTNOVBgqI/AAAAAAAAAFY/XkCkHzgswXc/s1600/rfidoor_strike.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto; text-align: center;"><img border="0" height="426" src="http://3.bp.blogspot.com/-AoUxIkdI3tE/UUuTNOVBgqI/AAAAAAAAAFY/XkCkHzgswXc/s640/rfidoor_strike.jpg" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Held into the aluminum with a series of screws, the lock became a neat addition to the door frame</td></tr></tbody></table><br />Now we can print out our badges, put on an RFID tag, and program the UID and data into the Arduino.<br /><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://4.bp.blogspot.com/-ykWimFgYVjQ/UUuTKWRw4JI/AAAAAAAAAFI/X0dR7hHRFuM/s1600/rfidoor_badge.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto; text-align: center;"><img border="0" height="426" src="http://4.bp.blogspot.com/-ykWimFgYVjQ/UUuTKWRw4JI/AAAAAAAAAFI/X0dR7hHRFuM/s640/rfidoor_badge.jpg" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Laminated identification card</td></tr></tbody></table><br /><br />Future plans include:<br /><ul><li>Ethernet support, adding a control panel.</li><li>Logging of cards (usage, amount of usage, etc)</li><li>Time frames</li><li>Proper mounting plate</li><li>Genuine People Personality</li></ul>Arduino code is available on the <a href="https://github.com/IHeartRobotics/rfidoor">Github Repository</a>. Stay tuned for more features.</div><div style="text-align: left;"><br /></div></div><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/v01htRJODcs" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/v01htRJODcs/rfid-door-1-of-n.htmlnoreply@blogger.com (cBorsky)7http://www.iheartrobotics.com/2013/03/rfid-door-1-of-n.htmltag:blogger.com,1999:blog-1409654809690469042.post-192633624710276289Thu, 21 Mar 2013 02:31:00 +00002013-03-20T22:31:08.586-04:00caddigital manufacturingflat patternlaser cutternetsOpen manufacturingpackagingsheet metalstructuralOpen Manufacturing: Laser Cut Packaging SolutionsI don't believe anyone can argue against the merits of attractive and functional packaging on a product. &nbsp;Sometimes, the way a box looks may even be enough to persuade a potential customer. &nbsp;There are thousands, maybe millions of unboxing videos posted to Youtube. Great packaging delivers its contents safely and gives its consumer a reason to smile. &nbsp;But, we aren't here to discuss the merits of aesthetically pleasing packaging. &nbsp;This is a post about building packaging that protects the integrity of the product being shipped and how to prototype that on your laser cutter.<br /><br /><a href="http://4.bp.blogspot.com/-CwV2eJaoVNM/UUoe-UvFXkI/AAAAAAAACGo/bbcYIzE5-vk/s1600/cracked.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="191" src="http://4.bp.blogspot.com/-CwV2eJaoVNM/UUoe-UvFXkI/AAAAAAAACGo/bbcYIzE5-vk/s320/cracked.jpg" width="320" /></a>At <i>I Heart Engineering</i>, there have been a few cases in which a TurtleBot 2 was damaged during shipping. &nbsp;One problem is that we currently do not manufacture our own boxes. &nbsp;However, what we can do is come up with our own structural packaging solutions to protect our products working within the constraints of "stock" boxes acquired from elsewhere. &nbsp;The first effort was directed at protecting the Kobuki base of the TurtleBot 2 during shipping. &nbsp;Currently, the shipping department modifies the already existing Kobuki packaging to fit inside of a commonly available box and uses foam inserts to protect the plates. Our question now, is how to create support for the Kobuki base using our digital manufacturing tools, or if you prefer, the Epilog Helix Laser.<br /><br />First, we need to understand the process of creating a "box." &nbsp;Well, the unfolded form of packaging is&nbsp;referred&nbsp;to as a net. &nbsp;This closely resembles the term flat-pattern which is used in sheet metal work. &nbsp;Some techniques used by sheet metal workers can be applied when making your net out of certain materials. &nbsp;In our case, we are limited to the use of 24" x 18" C-Flute Corrugated Cardboard which provided a few interesting issues. &nbsp;Before you begin to CAD your net or flat-pattern, you should create a scale model of what you intend to build out of card stock. I recommend reading Paul Jackson's <i><a href="http://www.amazon.com/Structural-Packaging-Design-Boxes-Forms/dp/1856697533">Structural Packaging Design Your Own Boxes and 3-D Forms</a></i> for a full understanding of that process. The end results produce something similar to the picture below.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-K5PLvH55O4Q/UUnhDvA4CCI/AAAAAAAACFw/4HlYebObTlw/s1600/IMG_5021.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="http://2.bp.blogspot.com/-K5PLvH55O4Q/UUnhDvA4CCI/AAAAAAAACFw/4HlYebObTlw/s640/IMG_5021.JPG" width="640" /></a></div><br />At this point, it is now okay to create your net in a CAD program of your choosing. &nbsp;I should note that there is software available designed for this specific purpose, but it is not Open Source nor does it seem to be made for work with laser cutters and is geared toward industrial designers. &nbsp;Parametric CAD suites like Solid Works and Creo [Pro/E] meet our needs in addition to tools such as Inkscape, GIMP, and Corel Draw.<br /><br />Folding is key, how the material folds and the method of folding make all the difference in the actual design of your net. There are sheetmetal formulas for calculating the proper lengths of your folds legs. &nbsp;However, in the case of cardboard and a laser cutter as a tool, things don't quite work exactly the same by our experiments. &nbsp;Sheetmetal work has a principle of the neutral axis, that is, the axis between the tangent points of &nbsp;a bend that is neither compressed nor stretched. In those formulas, this neutral axis is represented in what's called the K-Factor and Y-Factor [used in CAD software usually multiplying the K-Factor by number.] For this cardboard, the K-Factor is effectively 0 as all of the material compresses or stretches when bent at a 90deg angle. &nbsp;This means that bend radius on the inside and outside of the bend are very close to 0 for all intents and purposes, but you still have to account for the material thickness when designing the actual folds in the net. &nbsp;In other words, it is a good idea to offset some of your fold lines by some of the material's thickness to get a better fit. &nbsp;I also recommend that you shorten the lengths of your tabs to avoid fold interference and using corner reliefs everywhere applicable.<br /><br /><a href="http://2.bp.blogspot.com/-MkP8wKJ-9Wk/UUniSaO7VKI/AAAAAAAACF4/6IJZas6VBiA/s1600/IMG_5020.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="133" src="http://2.bp.blogspot.com/-MkP8wKJ-9Wk/UUniSaO7VKI/AAAAAAAACF4/6IJZas6VBiA/s200/IMG_5020.JPG" width="200" /></a>In terms of cutting the net and fold lines, Vector cutting the entire net is your best option for rapid and mass production. &nbsp;Using the raster feature to&nbsp;whittle away at the fold line would consume far too much time to make it useful in production. &nbsp;Also, because the cardboard is corrugated, it doesn't provide any actual advantage at all in this situation. &nbsp;There was no point in trying to vector the fold lines on low power to mimic a raster for that reason. &nbsp;Instead, I opted to test various methods of vectoring the fold lines from replicating the <a href="http://sniject.wikispaces.com/">SNIJ Hinge</a>&nbsp;to dashed lines of various lengths. &nbsp;I found that for our purposes a series of dashed lines similar to perforation were most effective in getting the cardboard to fold in a suitable manner for our purposes.<br /><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-B_C8Wd1BQwM/UUnohB_VxYI/AAAAAAAACGY/iIl_S7NkbiE/s1600/IMG_5023.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="http://3.bp.blogspot.com/-B_C8Wd1BQwM/UUnohB_VxYI/AAAAAAAACGY/iIl_S7NkbiE/s640/IMG_5023.JPG" width="640" /></a></div><br />After many iterations, a version was made that is sufficient for packaging our TurtleBot more safely than it was before. &nbsp;I will continue to iterate on it's design to make it even more effective, but this version was found to be sufficient. &nbsp;Also, it would be greatly appreciated if anyone knows where we can purchase E-Flute corrugated cardboard in 24" x 18" sheets. &nbsp;I have reasons to believe that it may be the most suitable size for this operation.<br /><br />Here is a link to the net posted on Thingiverse:&nbsp;<a href="http://www.thingiverse.com/thing:64220">http://www.thingiverse.com/thing:64220</a><br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-3wjWgVxZwFg/UUnoQchec4I/AAAAAAAACGI/ztQ1_MYikqo/s1600/IMG_5033.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="http://4.bp.blogspot.com/-3wjWgVxZwFg/UUnoQchec4I/AAAAAAAACGI/ztQ1_MYikqo/s640/IMG_5033.JPG" width="640" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-nSYpanP-BMY/UUnoRqpkVmI/AAAAAAAACGQ/xsrotQGM6qQ/s1600/IMG_5034.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="425" src="http://1.bp.blogspot.com/-nSYpanP-BMY/UUnoRqpkVmI/AAAAAAAACGQ/xsrotQGM6qQ/s640/IMG_5034.JPG" width="640" /></a></div><br /><br /><br /><br /><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/-8D4Gd38fXk" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/-8D4Gd38fXk/open-manufacturing-laser-cut-packaging.htmlnoreply@blogger.com (Ziggfield)2http://www.iheartrobotics.com/2013/03/open-manufacturing-laser-cut-packaging.htmltag:blogger.com,1999:blog-1409654809690469042.post-798856276702127778Wed, 06 Mar 2013 21:56:00 +00002013-03-06T19:02:02.671-05:003D PrinteracrylicadapterarduinoBeagle BoneBeagleBoardboardheatedindustrial designinjectioninsertslaser cuttermoldingOpen manufacturingprototypingraspberry pithreadeduniversalOpen Manufacturing: A Home for the Beagle Bone Part 2The 80/20 rule supposes that 80% of your results comes from 20% of the work you did. It has further been argued that the last 20% of a project is the most difficult and important. One can understand how these two ideas tie together and they indeed have some sort of merit. Those last few stages in preparing to bring a product to market/project to close are critical because the details are important. The last post ended with the Beagle Bone Case being at the 80% stage. The design language and major features have been settled. Now is the time to take the case and sort out imperfections, adjustments for changes in new/changed constraints, cost effective production and so forth. Basically, the iteration and revision of a design in the stages prior to being&nbsp;salable.<br /><br /><a href="http://3.bp.blogspot.com/-Ny1Hxo72aoU/UTJqLyyhwHI/AAAAAAAACCY/LAmMc8ejYOg/s1600/IMG_4943.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="213" src="http://3.bp.blogspot.com/-Ny1Hxo72aoU/UTJqLyyhwHI/AAAAAAAACCY/LAmMc8ejYOg/s320/IMG_4943.jpg" width="320" /></a>In this case, additional feature requests were made that changed core parts of the design. Room needed to be added to&nbsp;accommodate&nbsp;an additional shield or board, as well as any wiring. This resulted in the case being expanded 10mm on the sides and increasing the height by 18mm. Time was also taken at this stage to refine existing features. The SD Card port was enlarged for easier access and the press-fit to close system improved alongside adding <a href="http://en.wikipedia.org/wiki/Greeble">Greebling</a> to the case top. This version of the Beagle Bone Case was then 3D Printed.<br /><br /><br />Unfortunately, there is a problem with the case as designed; it takes over 5hrs 30min to complete in addition to suffering from curling due to its new size. Internally, a design that takes longer than 180-225min to 3D print is no longer affordable to offer as a product.&nbsp;The time removes full 3D printing as an option for manufacturing after including the cost of running the 3D Printer and man power.<br /><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://2.bp.blogspot.com/-z300JWMNfw8/UTJq3diFHRI/AAAAAAAACCc/vTe_seFcr9Y/s1600/IMG_4945.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="424" src="http://2.bp.blogspot.com/-z300JWMNfw8/UTJq3diFHRI/AAAAAAAACCc/vTe_seFcr9Y/s640/IMG_4945.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Highlighting the curling on the edges.&nbsp;</td></tr></tbody></table><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody><tr><td style="text-align: center;"><a href="http://2.bp.blogspot.com/-fQTyz-9a1Qg/UTJsLAE_3mI/AAAAAAAACCk/MyOFNxW_s7Q/s1600/IMG_4946.JPG" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="213" src="http://2.bp.blogspot.com/-fQTyz-9a1Qg/UTJsLAE_3mI/AAAAAAAACCk/MyOFNxW_s7Q/s320/IMG_4946.JPG" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">MDF as Case Top in Composite Test</td></tr></tbody></table>Perhaps the design could be reworked, turning the case into a composite of materials? Doing that would reduce the print time, lowering the plastic used. So, I removed the roof of the case and instead opted to&nbsp;laser cut&nbsp;a top that would glue into place. The idea here being that the roof layers generated by Skeinforge take much longer to complete than the layers for the walls themselves. But while the print time was reduced, it was not reduced enough to justify offering the case as a salable product. That is not to say the Beagle Bone Case would be a poor product, it is just outside our current manufacturing capabilities to offer it as a product made and sold by&nbsp;<i>I Heart Engineering.</i><br /><br />Engineering asks that problems not only be solved by building something, but building it in a manner that is practically useful to all involved parties. This lead to the decision that the final version of the 3D Printed Case can still be offered to the community via <a href="http://www.thingiverse.com/thing:54771">Thingiverse</a> to do with as they please and a new method of housing the Beagle Bone on the TurtleBot must be created. Another alternative would be to outsource the handling of the 3D Printing to a partner like <a href="http://www.shapeways.com/"><i>Shapeways</i></a> or travelling down the road of injection molding with services like<i> <a href="http://www.protomold.com/">Protomold</a></i>. The injection molding route may yield the best results, but it comes with it's own requirements so the case will enter another lengthy design phase. In both situations, crowd sourcing initial interest would be the smartest way to judge&nbsp;whether&nbsp;its a worthwhile endeavor.<br /><br />To reach this point, over 6 versions of the Beagle Bone Case were created, not including any of the test parts used. The project spanned 10 regular working days. More than 24 hours of actual 3D Printing Time were logged.<br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://3.bp.blogspot.com/-7Zyl8pmilt0/UTJpXQnIr6I/AAAAAAAACCM/h0I-RmWg_zg/s1600/IMG_4942.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://3.bp.blogspot.com/-7Zyl8pmilt0/UTJpXQnIr6I/AAAAAAAACCM/h0I-RmWg_zg/s640/IMG_4942.jpg" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Overview of various case part iterations</td></tr></tbody></table><b><u>Where the Project is Now</u></b><br /><br /><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://3.bp.blogspot.com/-8xio_Ae_9X4/UTVAnCsEKgI/AAAAAAAACC0/3oC5NR1kRsU/s1600/IMG_4947.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="133" src="http://3.bp.blogspot.com/-8xio_Ae_9X4/UTVAnCsEKgI/AAAAAAAACC0/3oC5NR1kRsU/s200/IMG_4947.JPG" width="200" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Testing Inserts Effect on Acrylic</td></tr></tbody></table>Although the Full 3D Printed Case as a salable product was not achieved, the product idea itself does not die. The plan now is to scale back the design and focus of the simplicity of the intended function. We need a way to mount the Beagle Bone to the TurtleBot. The simplest and most effective way to achieve this is to create an adapter for the Beagle Bone to the TurtleBot. This can be achieved with a formed plate containing mounting points for the Board and TurtleBot. While not as consumer market friendly as the full case, it serves the core functionality, is within our current manufacturing ability, and is useful to our current and future customers.<br /><div class="separator" style="clear: both; text-align: center;"></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-BanpHqcYxh4/UTVCSHNC0_I/AAAAAAAACDA/8mr9p8gOjzk/s1600/IMG_4953.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="http://4.bp.blogspot.com/-BanpHqcYxh4/UTVCSHNC0_I/AAAAAAAACDA/8mr9p8gOjzk/s640/IMG_4953.JPG" width="640" /></a></div><br />Fortunately, we already have all the necessary dimensions and constraints on hand due to earlier work. Because this makes creating the adapter a much faster process, there was a realization that we can make this adapter plate universal between several development boards at once. What started as an idea to build cases for boards that had universal mounting points, is now a simple adapter plate that works with the Beagle Bone, Raspberry Pi, and Arduino suite of Boards.<br /><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-WNGlCCka15M/UTVChJnsxZI/AAAAAAAACDQ/bbXtW0Vs5eY/s1600/IMG_4964.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="http://3.bp.blogspot.com/-WNGlCCka15M/UTVChJnsxZI/AAAAAAAACDQ/bbXtW0Vs5eY/s640/IMG_4964.JPG" width="640" /></a></div><br />The adapter is made of 1/4" thick Acrylic featuring 16 Brass Heated Inserts for 4 different hole patterns that comfortably accommodates the Beagle Bone, Raspberry Pi, and Arduino suite of Boards. It comes ready with Board Adapter Plate, (4) M3 1/4" spacers, (2) M2.5 1/4" spacers, (6) 10mm M3 socket head screws, (2) 10mm M2.5 socket head screws, and (4) 10mm M4 thumbscrews.<br /><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-gOv76U_QS3Y/UTVCVNaUeHI/AAAAAAAACDM/D0g3vbqBKA0/s1600/IMG_4954.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="http://4.bp.blogspot.com/-gOv76U_QS3Y/UTVCVNaUeHI/AAAAAAAACDM/D0g3vbqBKA0/s640/IMG_4954.JPG" width="640" /></a></div><br /><br />Pre-Oder your TurtleBot Universal Board Adapter here [Lead Time: 1 week]:&nbsp;<a href="http://store.iheartengineering.com/robots/turtlebot/accessories/ihe-2101-0003-0000.html">http://store.iheartengineering.com/robots/turtlebot/accessories/ihe-2101-0003-0000.html</a><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/-WO-ZUkCnUU" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/-WO-ZUkCnUU/open-manufacturing-home-for-beagle-bone.htmlnoreply@blogger.com (Ziggfield)0http://www.iheartrobotics.com/2013/03/open-manufacturing-home-for-beagle-bone.htmltag:blogger.com,1999:blog-1409654809690469042.post-5304730207083950834Mon, 25 Feb 2013 19:02:00 +00002013-02-26T14:53:29.601-05:003D PrinterAccessoriesBeagle BoneBeagleBoardcasedesignindustrial designOpen manufacturingTurtleBotTurtleBot 2Open Manufacturing: A Home for the Beagle BonePeople often take for granted the amount of engineering that goes into simple everyday products and items. Very few people know or care why that door handle has a gusset or the reasons washers even exist. Even the most mundane of things have considerable engineering thought go into them. It was decided that <i>I Heart Engineering</i>&nbsp;needed a custom case for mounting a Beagle Bone to the TurtleBot. This is an attempt to walk readers through some of the thoughts and considerations that go into building something so small and seemingly trivial. After all, a case is just another box right?<br /><br />The first thing is to frame what you want to build by constructing a list of constraints and intentions for guidance. In our case, we decided it needed to consider following:<br /><br /><ol><li>Access to all of the ports with special consideration given to SD Card removal.</li><li>Maintaining minimal dimensions&nbsp;</li><li>Able to be mounted to the TurtleBot using a universal set of mounting holes.</li><li>3D Printable Design&nbsp;</li></ol>Doing this creates the "world" that your design lives in and as such the tools you may consider using and the initial ideas for construction.<br /><div><br /></div><div>The next step is to obtain or create a 3D Cad replica of the Beagle Bone board. If one has to create their own model for testing, it's best to note that only the major dimensions of the board and components necessary to the case are needed, but they must be accurate. &nbsp;These include the board itself, it's ports, mounting holes, and anything that one may feel needs to be built around to complete the case.&nbsp;</div><div><br /></div><div>Now that we have a physical and 3D model of the Beagle Bone, we can start to draw out the general outline and order of feature construction. I personally rough out a general model idea on paper and then begin creating in a CAD program of choice with the frame. Testing and experimentation are important parts of the design process. I constructed a rough case frame that wraps around the Beagle Bone and printed the piece to test the tolerances and fit. Doing this is beneficial to designers as it saves time over the long term versus running into an unaccounted error later in the process. The idea uses empirical analysis to verify quantitative and qualitative data.<br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://2.bp.blogspot.com/-ziNRDAMI1Y4/USZ1T2pJPmI/AAAAAAAAB9E/QLpoBuGUTVQ/s1600/IMG_4918.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://2.bp.blogspot.com/-ziNRDAMI1Y4/USZ1T2pJPmI/AAAAAAAAB9E/QLpoBuGUTVQ/s640/IMG_4918.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Early test frame for tolerance checking.</td></tr></tbody></table>After verifying the dimensions, I can now construct the bottom frame of the case. Here is where I asked: well just how high <i>should</i>&nbsp;the case be? To solve this problem, one has to consider the space between the bottom of the board and any components on its underside. In this case, it's ~6mm. &nbsp;So, one can aim for the bottom half of the case to be 8-10mm or slightly more, but certainly not less.&nbsp;</div><div><br /></div><div>So you've built the bottom half of the case frame, now what? Well, you have to get the Beagle Bone mounted inside the frame somehow. Let's consider the 4 mounting holes on the board. I decided to construct bosses extruded from the bottom of the case coming up to the underside of the board. However, one cannot simply create a boss to your desire; this board has components on both sides that limit the amount of&nbsp;usable&nbsp;space. The design also has to be 3D printable which dictates a minimum thickness AND you have to consider the size of potential screw heads. This left only 2 mounting holes with sufficient space on either side for the design in mind.<br /><br /></div><div><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"><tbody><tr><td style="text-align: center;"><a href="http://1.bp.blogspot.com/-H0fbD4xIBa8/USZ1987uSSI/AAAAAAAAB9M/9cLfcikE4Dc/s1600/IMG_4919.JPG" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="212" src="http://1.bp.blogspot.com/-H0fbD4xIBa8/USZ1987uSSI/AAAAAAAAB9M/9cLfcikE4Dc/s320/IMG_4919.JPG" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Test Boss used to verify clearances</td></tr></tbody></table></div><div>The same process is repeated as before, we create a test boss to test the tolerances and verify dimensions, but this time another problem arises. The bosses aren't very rigid and are susceptible to damage. How can one make them more stable and rigid? Well, it turns out the mounting holes are conveniently located close the inside frame of the wall. Therefore, we can build the bosses out from the inside wall, integrating them into the<br />case frame itself and solving the problem.<br /><br /></div><div><div class="separator" style="clear: both; text-align: center;"></div>After another round of test and fit, we see that the Beagle Bone Board may still teeter and totter on the inside due to use of only 2 mounting holes. Depending on whether you view the amount of deflection as tolerable or not, you can opt to build two bosses located at the unused holes to provide more support. Remember, one has to take into account the actual diameter of usable space for each hole when constructing the bosses.</div><div><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://4.bp.blogspot.com/-GndUlxDrkzI/USZ6S0ss7TI/AAAAAAAAB9k/VDMhtO0GZUk/s1600/IMG_4921.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://4.bp.blogspot.com/-GndUlxDrkzI/USZ6S0ss7TI/AAAAAAAAB9k/VDMhtO0GZUk/s640/IMG_4921.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Internals of bottom half across revisions [left to right.]&nbsp;</td></tr></tbody></table><br /><br />Now we can begin to cut out the access points for the ports on the Beagle Bone board that affect the bottom half of the case. The key thing here is to once again verify that your board dimensions are correct or the test prints will be useless.<br /><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://3.bp.blogspot.com/-x7SuSp5cNDc/USZ5R-cP-JI/AAAAAAAAB9c/zcjdv30N40c/s1600/IMG_4924.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://3.bp.blogspot.com/-x7SuSp5cNDc/USZ5R-cP-JI/AAAAAAAAB9c/zcjdv30N40c/s640/IMG_4924.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Shot of &nbsp;front side, bottom half port access points across revisions &nbsp;[left to right.]&nbsp;</td></tr></tbody></table>Next, I constructed the mounting points and bottom support layout for the bottom of the case. Thankfully, a much simpler process. &nbsp;However, we want to save on material to reduce cost and print time. So the bottom of the case does not have to be completely solid. Now we are creating a horizontal support structure that acts as the bottom of the case. One could either go with a simple geometrically rigid structure or use some physics to calculate some assumed forces and optimize accordingly.<br /><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://1.bp.blogspot.com/-ZZfcvSmpKMQ/USZ7c5nx02I/AAAAAAAAB9s/MhZShxWkecc/s1600/IMG_4922.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://1.bp.blogspot.com/-ZZfcvSmpKMQ/USZ7c5nx02I/AAAAAAAAB9s/MhZShxWkecc/s640/IMG_4922.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Bottom of Case changes across revisions [left to right]</td></tr></tbody></table><br /><br />Building the top half of the case is a much simpler endeavor as it's a mirror of the bottom frame. For it, one only needs to consider the access points for ports and maximum vertical height. The access points are already defined and it was decided that the case should extend no more than 10mm from the highest board component.<br /><br />What we have yet to discuss is exactly <i>how</i>&nbsp;this case fits together. &nbsp;There are various joinery methods available to close the case. It was personal preference that motivate the decision to use a press fit method to restrict all lateral movement and <i>some</i>&nbsp;vertical movement. The ultimate endeavor is to implement a locking mechanism designed into the case itself that is 3D printable. However, a satisfactory resolution is not ready yet. &nbsp;Therefore, two ports were added on the left and right sides of the case for use with a small velcro strap to prevent all vertical lift. At the cost of an integrated solution, the case can now be opened and closed with ease.<br /><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://2.bp.blogspot.com/-RuW5cpdoqZ4/USetIWNh7XI/AAAAAAAAB_M/9TfXuKgXDzo/s1600/IMG_4938.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://2.bp.blogspot.com/-RuW5cpdoqZ4/USetIWNh7XI/AAAAAAAAB_M/9TfXuKgXDzo/s640/IMG_4938.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Close up of &nbsp;Assembly Secured to TurtleBot 2</td></tr></tbody></table>The final touches and adjustments necessary for a&nbsp;salable&nbsp;product remain. 3D Printing settings must be created to ensure consistent quality prints. The case top will be taller for&nbsp;accommodating a second potential board stack. &nbsp;Dimensions may be altered to be better fit the installation of threaded inserts in certain locations. And closing methods may be altered for a better fit.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-rA0rhjNSEkU/USetgi90ljI/AAAAAAAAB_U/UBaQRwas1qY/s1600/IMG_4940.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="http://2.bp.blogspot.com/-rA0rhjNSEkU/USetgi90ljI/AAAAAAAAB_U/UBaQRwas1qY/s640/IMG_4940.JPG" width="640" /></a></div><br /><br />NOTE: .stl files for printing your own case should be up on Thingiverse on Tuesday afternoon EST.<br /><br /><b><u>Update 2/26/2013:</u></b> Files uploaded to <a href="http://www.thingiverse.com/thing:54771">Thingiverse</a><br /><br /></div><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/rpCq2hhzWzM" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/rpCq2hhzWzM/open-manufacturing-home-for-beagle-bone.htmlnoreply@blogger.com (Ziggfield)2http://www.iheartrobotics.com/2013/02/open-manufacturing-home-for-beagle-bone.htmltag:blogger.com,1999:blog-1409654809690469042.post-552737433740408464Mon, 25 Feb 2013 16:57:00 +00002013-02-25T12:10:58.040-05:00nycROSTurtleBotTurtleBot 2TurtleBot2 demo in NYC<div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-BzijdnHxPZc/USuXtBt6vNI/AAAAAAAAC_M/vzywTxWkzq0/s1600/IHE-2700-000C-0000-00.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="480" src="http://4.bp.blogspot.com/-BzijdnHxPZc/USuXtBt6vNI/AAAAAAAAC_M/vzywTxWkzq0/s640/IHE-2700-000C-0000-00.jpg" width="640" /></a></div><br />We will be presenting a live demo of the TurtleBot 2 tomorrow in Manhattan at the <a href="http://www.meetup.com/NY-Hardware-Start-up/events/103709572/">6th NY Hardware Startup Meet up</a>.<br /><br />See you there!<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/7H2ZpB6zqTw" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/7H2ZpB6zqTw/turtlebot2-demo-in-nyc.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/02/turtlebot2-demo-in-nyc.htmltag:blogger.com,1999:blog-1409654809690469042.post-5384963738113621027Fri, 22 Feb 2013 18:50:00 +00002013-02-22T14:33:21.939-05:00barcodeengravelaser cutterlaser cuttinglogoMDFOpen manufacturingPaintQR CoderasterSpray PaintOpen Manufacturing: Laser Engraving and LogosWhen you have a hammer, everything is a nail; when you have a laser cutter, everything needs to be engraved.<br /><br /><div><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-23_3cyqbShk/UQmXkmvQJFI/AAAAAAAAB20/XRZNv5WWe4s/s1600/barcode.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="426" src="http://2.bp.blogspot.com/-23_3cyqbShk/UQmXkmvQJFI/AAAAAAAAB20/XRZNv5WWe4s/s640/barcode.jpg" width="640" /></a></div></div><br /><div class="" style="clear: both; text-align: left;">We have been engraving the backside of our plates with a QR Code and part number, so to improve readability and aesthetics we have been exploring ways to paint the plates.There are two points to cover&nbsp;</div><div class="separator" style="clear: both; text-align: left;"></div><ol><li>Method of Application</li><li>Paint used in Application.</li></ol>The painting methodology was tested in two manners. The first, application of paint over the transfer tape. The tape was removed immediately, in one test, and after the paint had dried in another. Neither made a noticeable impact so long as the paint was able to dry undisturbed.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-5Lg3mGat-e4/USe21f4qxcI/AAAAAAAAB_w/q3uqyGvvl3Q/s1600/IMG_4941.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="402" src="http://4.bp.blogspot.com/-5Lg3mGat-e4/USe21f4qxcI/AAAAAAAAB_w/q3uqyGvvl3Q/s640/IMG_4941.JPG" width="640" /></a></div><br /><div class="" style="clear: both; text-align: left;"><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-zdK_hQvIynM/USe3H4M_3PI/AAAAAAAAB_4/hGfyQ5pHMrY/s1600/IMG_4860.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="426" src="http://3.bp.blogspot.com/-zdK_hQvIynM/USe3H4M_3PI/AAAAAAAAB_4/hGfyQ5pHMrY/s640/IMG_4860.JPG" width="640" /></a></div><br /></div><div class="" style="clear: both; text-align: left;"><br /></div><div class="" style="clear: both; text-align: left;">This picture, however, illustrates a flaw in the application using this method:</div><div class="separator" style="clear: both; text-align: left;"></div><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: left;"><tbody><tr><td style="text-align: center;"><a href="http://4.bp.blogspot.com/-dSap632hpQM/UR1KYVn67FI/AAAAAAAAB7E/Q2P4w8FCBzQ/s1600/IMG_4860.JPG" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://4.bp.blogspot.com/-dSap632hpQM/UR1KYVn67FI/AAAAAAAAB7E/Q2P4w8FCBzQ/s640/IMG_4860.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Paint applied and transfer tape removed after drying</td></tr></tbody></table>The smudging and distortion of is caused by excessive application of paint. This should be kept in mind for manual use as well as future process automation. When done correctly, the end result so resemble this plate:<br /><br /><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"><tbody><tr><td style="text-align: center;"><a href="http://3.bp.blogspot.com/-9QxuBuIclXY/UR1MwAfqfSI/AAAAAAAAB7M/zEOcoQUQfbA/s1600/IMG_4862.JPG" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://3.bp.blogspot.com/-9QxuBuIclXY/UR1MwAfqfSI/AAAAAAAAB7M/zEOcoQUQfbA/s640/IMG_4862.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Successful Application</td></tr></tbody></table><div class="separator" style="clear: both; text-align: left;">It also turns out that as long as the applier takes great care, similar results can be achieved without the use of transfer tape. One simply fills the engraved sections with paint and removes excess from the surface with a cloth moistened with acetone or paint thinner. The results of which are seen below.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"><tbody><tr><td style="text-align: center;"><a href="http://2.bp.blogspot.com/-KCz8PaqIZFU/UR1NyuKLNHI/AAAAAAAAB7U/lbtEH14d-10/s1600/IMG_4863.JPG" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://2.bp.blogspot.com/-KCz8PaqIZFU/UR1NyuKLNHI/AAAAAAAAB7U/lbtEH14d-10/s640/IMG_4863.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Successful Application without Transfer Tape</td></tr></tbody></table><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />However, looking at this image, one could say that the green isn't sufficient as some MDF can be seen through it. Perhaps we should look into using something as a base paint and then adding a coat of the intended color, much like priming a wall. Well we did test that and the results were not satisfactory.<br /><br /><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"><tbody><tr><td style="text-align: center;"><a href="http://4.bp.blogspot.com/-JY03MnVCmNE/UR1PDpHeswI/AAAAAAAAB7c/XhnFnNpt7C0/s1600/IMG_4859.JPG" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="426" src="http://4.bp.blogspot.com/-JY03MnVCmNE/UR1PDpHeswI/AAAAAAAAB7c/XhnFnNpt7C0/s640/IMG_4859.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Painted with White base layer and Green top coat</td></tr></tbody></table>Resulted in a mess. This method was not successful in multiple attempts and shelved for later. It is a suspicion that this idea may work better depending on the type of paint used in the application. The necessity for something providing a similar hardness as enamel is understood, but perhaps their are paints available tailored to these types of jobs or more MDF friendly and so forth. We have yet to test this factor. &nbsp;What we do know is that moderate application of paint and time to dry undisturbed are key to producing a quality fill. Perhaps a better way to mitigate the MDF coverage problem is to increase the depth of the engraving. It so happens that we tested this idea and with levels of success as well.<br /><br />Why not do the same thing for the topside of the TurtleBot's top plate? Engraved text and images can replace stickers as means of identification and&nbsp;aesthetics.<br /><br />This is a sticker that we currently have in use:<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-7tScYe5fHH0/UR1APX6e81I/AAAAAAAAB6M/nDZBAipPB00/s1600/IMG_4868.JPG" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="406" src="http://4.bp.blogspot.com/-7tScYe5fHH0/UR1APX6e81I/AAAAAAAAB6M/nDZBAipPB00/s640/IMG_4868.JPG" width="640" /></a></div><div class="" style="clear: both; text-align: left;">Companies have logos. Most agree, putting your logo on a product amounts to free advertising. Advertising is so pervasive in our culture products look strange without them. So far, the TurtleBot has only been branded with a simple stickers. &nbsp;We have been looking at sticker manufacturers that could produce die cut stickers with fine line and details.<br /><br />While the sticker is of good build quality, it does not entirely meet desired specifications. We wanted a sticker that felt like part of the product; cosmetically,&nbsp;we wanted to achieve finer line width on the lettering and "power heart."<br /><br /></div>Overall, this idea means we now have a cost effective means of producing high quality labels and logos for prototypes and low volume production runs. In the future, we would like to explore efficient methods of multiple color applications in addition to expanding application methods themselves such as spray painting. Part of that process includes finding solutions for achieving a satisfactory fill.<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-lnr1qwWS6H8/UR1RcX-nySI/AAAAAAAAB7k/0G6tYNI9vZ4/s1600/IMG_4864.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="426" src="http://2.bp.blogspot.com/-lnr1qwWS6H8/UR1RcX-nySI/AAAAAAAAB7k/0G6tYNI9vZ4/s640/IMG_4864.JPG" width="640" /></a></div><br /><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/uuZzBB_i06c" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/uuZzBB_i06c/open-manufacturing-laser-engraving-and.htmlnoreply@blogger.com (Ziggfield)2http://www.iheartrobotics.com/2013/02/open-manufacturing-laser-engraving-and.htmltag:blogger.com,1999:blog-1409654809690469042.post-5422904585682162681Tue, 12 Feb 2013 23:49:00 +00002013-02-12T18:50:31.280-05:003D mappingKinectRGB-DFast Visual Odometry and Mapping with RGB-D data<iframe allowfullscreen="" frameborder="0" height="360" src="http://www.youtube.com/embed/YE9eKgek5pI" width="640"></iframe> <a href="https://code.ros.org/lurker/message/20130212.221817.7733aadc.en.html"><br /></a><a href="https://code.ros.org/lurker/message/20130212.221817.7733aadc.en.html">More work</a> from the team at the CCNY Robotics Lab<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/nhbjfQPuYAE" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/nhbjfQPuYAE/fast-visual-odometry-and-mapping-with.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/02/fast-visual-odometry-and-mapping-with.htmltag:blogger.com,1999:blog-1409654809690469042.post-7130081991282965600Tue, 12 Feb 2013 02:52:00 +00002013-02-11T21:52:41.484-05:00ISOROSsoftwareTurtleBotTurtleBot 2TurtleBot 2 ROS Groovy ISO BETA 4If you have a TurtleBot 2 and don't mind re-installing please help us test this!</br>64-bit ROS Groovy installer for TurtleBot 2<br/><a href="http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-RC4.iso">turtlebot-groovy-ubuntu-12.04.1-RC4.iso </a><br/> Md5sum: c59ad5f22a81a02b9e6b878f9571b656<br/><br/>Please submit bugs to the appropiate issue tracker on GitHub, or <a href="https://github.com/TurtleBot-Mfg/turtlebot-iso/issues">here</a>. <pre><br />RELEASE NOTES<br />=============<br />* Unity TurtleBot Dashboard launcher now works<br />* rosdep now preinstalled for ROS system user and for normal users<br />* Desktop GUI tools restored<br />* New Groovy TurtleBot wallpapers<br />* turtlebot-indicator<br /> * Provides "help" on initial startup<br /> * Displays User ROS is running as<br /> * Automatic startup of ROS can be enabled/disabled<br /><br />KNOWN BUGS<br />==========<br />* SSIDs with spaces break ros-network-id<br />* Rviz default config needed<br />* Rename rumblepad2 -> logitech<br />* Notifications for start/stop<br />* Android Chirp does not currently work<br />* Nodelet development is complicated due to ROS System User<br />* sudo service turtlebot start is deprecated<br />* UPDATE DOCUMENTATION<br /></pre><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/xa_aXRlaPuI" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/xa_aXRlaPuI/turtlebot-2-ros-groovy-iso-beta-4.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/02/turtlebot-2-ros-groovy-iso-beta-4.htmltag:blogger.com,1999:blog-1409654809690469042.post-3220611091163182984Fri, 01 Feb 2013 20:48:00 +00002013-02-01T17:05:30.963-05:00laser cutterlaser cuttingopen hardwareOpen manufacturingopensourcePartKeeprQR CodeSpimeOpen Manufacturing: Tracking And Laser Cut QR CodesPeople like to label things. Labeling, by human convention, provides a means of identification. Perhaps even greater, it gives us a way to create an identity, a story unique to the individual. We find this worth exploring.&nbsp;<i>I Heart Engineering</i> would like to contribute by showing the beginnings of answering the question: how does a small Open Manufacturing/Hardware company effectively organize, manage, and service its products with limited resources? How can we give our customers a way of identifying a part or component on a robot and how can they go about servicing or acquiring another one? Further, how do we give our parts and components an identity as if it were a&nbsp;<a href="http://en.wikipedia.org/wiki/Spime">spime</a>? The TurtleBot 2 shipped from<i> I Heart Engineering</i> tests one of our initial ideas.<br /><br />Over the past year, an internal part numbering scheme was created for our use. &nbsp;In fact, the&nbsp;methodology&nbsp;for said system is located on our Wiki Page&nbsp;<a href="http://learn.iheartengineering.com/wiki/Product/Code" target="_blank">Learn.IHeartEngineering.com</a>&nbsp;as well as other useful information. Creating a part number for every component and product comes with a set of advantages and disadvantages.<br /><br />A major responsibility is proper maintenance and sequencing of internal components (a task that may require dedicated staff as the business scales upward.) &nbsp;Often, it is necessary to augment your system to include a type of part, component, or product previously excluded. For example, we now have a<a href="http://learn.iheartengineering.com/wiki/Product/IHE-0100-0007-5300"> Kinect Sensor Standoff</a> and <a href="http://learn.iheartengineering.com/wiki/Product/IHE-0100-0006-5300">Xtion Sensor Standoff</a> for the TurtleBot 2. &nbsp;In some ways, the Xtion Sensor Standoff is a revision of the Kinect version (removed taper and M4 threaded holes vs 6-32 stud on one end.) A different perspective identifies the Xtion Standoff as an individual part because of its intended use with the Asus Xtion vs the Kinect. &nbsp;We decided to treat it as an individual part and have assigned the Xtion Sensor Standoff a new part number over making its number a revision of the Kinect Sensor Standoff.<br /><br />Some things are produced in-house, others outsourced. In the case of outsourced manufacturing, an internal part numbering system proves to be extremely beneficial. Placing orders between you and your manufacturer becomes effortless after providing them with properly documented information. It also keeps the flow of information between departments from being corrupted. &nbsp;Instead of holding your accounting department's hand when ordering more inventory, you can simply provide an order with references to the internal part numbers.<br /><br />In some scenarios, we are simply ordering materials and items from a vendor or distributor. &nbsp;These items have 2 sets of part numbers. One from <i>I Heart Engineering</i> and the other from the vendor/distributor themselves. This gives the ability to purchase similar commodities from various sources and treat them as the same item. &nbsp;The task, then, is to create a system in which we can identify an item by its internal and external part number. This information is&nbsp;consolidated&nbsp;by our use of an Open Source Inventory management system called <a href="http://partkeepr.org/">PartKeepr</a>. In it, we are building an entire catalog of internal inventory. Items may be&nbsp;categorized&nbsp;by "<i>what"</i>&nbsp;they are, but their pages tell us <i>"who." </i>Meaning the internal <i>and</i>&nbsp;external part number as well as that vendor/distributor's information for placing the order. Built up over time, it makes being able to stay focused on working easier as the business begins to scale.<br /><br />The first consumer facing application of our system appears on TurtleBot 2's distributed by<i> I Heart Engineering</i>. Users should notice a QR Code and Part Number located on the underside of their TurtleBot 2 Plates.<br /><div><div><div><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-23_3cyqbShk/UQmXkmvQJFI/AAAAAAAAB20/XRZNv5WWe4s/s1600/barcode.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="213" src="http://2.bp.blogspot.com/-23_3cyqbShk/UQmXkmvQJFI/AAAAAAAAB20/XRZNv5WWe4s/s320/barcode.jpg" width="320" /></a></div><br /></div><div>Scanning the QR Code directs the user to the product's wiki page. [<a href="http://learn.iheartengineering.com/wiki/Product/IHE-0102-000C-0000" target="_blank">TurtleBot 2 Disk 1 Wiki Page</a>] All of the information useful for manufacturing the Disk can be found here, as well as linking to the store for purchase. &nbsp;When your business begins to scale, a second or augmented part number can be created to possibly denote time and location of manufacture.&nbsp;</div></div><div><br /><b><u>Some Things About Lasers and Codes</u></b></div><div>During test manufacturing of the QR Codes, some interesting things were noticed. One is the conflict presented by contrast. The other is that the "Buffer Zone" surrounding the QR Code itself is critical for success, but can be flexible in certain conditions. <span style="font-size: xx-small;">(1)</span><br /><span style="font-size: xx-small;"><br /></span></div><div><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-g3_6WJT7iOQ/UQwUa1I0yfI/AAAAAAAAB38/eDqwwVuQO2M/s1600/g3047.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="213" src="http://1.bp.blogspot.com/-g3_6WJT7iOQ/UQwUa1I0yfI/AAAAAAAAB38/eDqwwVuQO2M/s320/g3047.png" width="320" /></a></div><div class="separator" style="clear: both; text-align: center;"></div><br /></div><div>Notice the difference in the 3 rows pictured, each has a different sized border. &nbsp;</div><div><ol><li>No Border</li><li>Border is approximately equal to size of single QR Code data square</li><li>Border is approximately 4x the size of a single QR Code data square</li></ol>QR Code best practices&nbsp;recommends&nbsp;that 4x the data square be the standard for Buffer Zones. &nbsp;However, the Row 2 Codes were able to be scanned by some QR Code readers sporadically and others not at all. The performance was not suitable for a shipping product, it was just interesting to note that the contrast of light brown on Black was enough to offset the recommended Buffer Size in some [admittedly few] situations. It stands to reason that possibly increasing the Row 2 Buffer Zone to 2x the size of a data square would boost reliability to that suitable for a shipping product.<br /><br />Remaining on proper contrast for one's QR Codes. Black MDF provided an interesting quirk. The QR Code generators I've used seem to all generate Black on White QR Codes. If you raster the MDF with the codes as is, they will be unusable for reasons illustrated below.</div></div><div><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-HbbqdjBdCfM/UQqvI881-aI/AAAAAAAAB3k/w55gctXrXV8/s1600/Invert_QR.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="http://1.bp.blogspot.com/-HbbqdjBdCfM/UQqvI881-aI/AAAAAAAAB3k/w55gctXrXV8/s320/Invert_QR.jpg" width="196" /></a></div>For the sake of argument, let us assume that the Black squares on the QR Codes represent the actual data (instead of really being a matrix of data.) &nbsp;Laser Cutters do not raster the white areas, they raster the black weighted lines and objects. &nbsp;This means that, on Black MDF, the data is "inverted" and thus unusable. &nbsp;To remedy this, invert the color of the QR Code and then place the properly sized "Buffer Zone."&nbsp;</div><div><br />Another interesting characteristic of the QR Codes found on our TurtleBot2 Disks are that they can only be scanned within 120.8mm or ≈5inches. &nbsp;This was calculated using the formula:&nbsp;</div><div><div style="text-align: center;"><strong style="background-color: #f6f4f4; font-family: Arial, serif; line-height: 18.1875px;">Minimum QR Code Size = (Scanning Distance / Distance Factor) * Data Density Factor <span style="font-size: xx-small;">(1)</span></strong></div></div><div>The Distance Factor is a constant from 10 to 1 based on the lighting conditions. &nbsp;Data Density Factor is the number of data columns in one's QR Code divided by 25.&nbsp;</div><div><br />Approximating Scanning Distance ≈ (14mm * 10) / (29 data columns / 25)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ≈ 140mm / 1.16<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ≈ 120mm or ~5"<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-2qCdLTqTmEA/UQmalHLw09I/AAAAAAAAB3E/oskrseGoU_E/s1600/caliper_qr.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="213" src="http://3.bp.blogspot.com/-2qCdLTqTmEA/UQmalHLw09I/AAAAAAAAB3E/oskrseGoU_E/s320/caliper_qr.jpg" style="cursor: move;" width="320" /></a></div><br />Also, for those of you with access to laser cutters looking for a better finish on MDF raster jobs without much effort, use Transfer Tape when engraving the object. &nbsp;The CO2 laser burns some of the tape material onto the MDF creating a sort of white fill over the raster area adding some polish. I have not tested this effect on other materials in our Helix.&nbsp;</div><div><br />1. QR Stuff.&nbsp;<a href="http://www.qrstuff.com/blog/2011/01/18/what-size-should-a-qr-code-be" target="_blank">http://www.qrstuff.com/blog/2011/01/18/what-size-should-a-qr-code-be</a></div><div><strong style="background-color: #f6f4f4; font-family: Arial, serif; font-size: 13px; line-height: 18.1875px;"><br /></strong></div><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/iz4nuMyAFNk" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/iz4nuMyAFNk/open-manufacturing-tracking-and-laser.htmlnoreply@blogger.com (Ziggfield)0http://www.iheartrobotics.com/2013/02/open-manufacturing-tracking-and-laser.htmltag:blogger.com,1999:blog-1409654809690469042.post-7634890308128343669Wed, 16 Jan 2013 05:18:00 +00002013-01-16T11:20:35.243-05:00ROSsoftwareTurtleBotTurtleBot 232 Bit TurtleBot 2 ISOIf 32-Bit are all you got, this ISO should get your TurtleBot 2 up and running 32-Bit TurtleBot 2 ROS Groovy ISO Beta 2 (1.2GB)<br /><div wrap=""><a href="http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-i386-beta2.iso">http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-i386-beta2.iso</a></div><br />md5sum: e8e1537f6294c0de5e5e2a53d88f6775<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/GdkWQHtfQnU" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/GdkWQHtfQnU/32-bit-turtlebot-iso.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/01/32-bit-turtlebot-iso.htmltag:blogger.com,1999:blog-1409654809690469042.post-5618641380658077353Fri, 11 Jan 2013 01:18:00 +00002013-01-10T20:18:15.437-05:00ROSsoftwareTurtleBotTurtleBot 2Work Continues<iframe allowfullscreen="allowfullscreen" frameborder="0" height="480" src="http://www.youtube.com/embed/3XXVQdEpoUM" width="640"></iframe><br /><br />This video demonstrates the <a href="http://store.iheartengineering.com/ihe-2700-000c-0000.html">TurtleBot 2 mobile robot</a> performing automatic docking maneuvres using an Android app. This demo works out of the box and only requires that the TurtleBot has a working wifi connection. Once docked, the mobile base and the on-board laptop both begin charging so the robot is always ready for whatever tasks are queued.<br /><br />To get the robot to start ROS on bootup with minimal configuration we have developed an external Debian package <a href="https://github.com/TurtleBot-Mfg/ros-system-daemon-groovy">ros-system-daemon-groovy</a>. This package provides infrastructure to run ROS system wide as user 'ros' in a way that is compliant with the <a href="http://wiki.debian.org/FilesystemHierarchyStandard">Debian FHS</a> with logs written to /var/log/ros and rotated on a daily basis and expired after a week. The package includes network autoconfiguration tools that query <a href="http://projects.gnome.org/NetworkManager/">NetworkManager</a> via D-Bus and <a href="http://upstart.ubuntu.com/cookbook/">Upstart</a> scripts that start ROS once a network connection becomes active.<br /><br />This package is designed not just to work with the TurtleBot, but we hope that it can be useful for other robot developers who need a way to start ROS at bootup.<br /><br />Basic documentation for the package can be found <a href="https://github.com/TurtleBot-Mfg/ros-system-daemon-groovy/blob/master/README.md">here</a>.<br /><br />Feedback is greatly appreciated and please submit bugs and feature requests to the issue tracker on Github.<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/LZAuXnZ0rG0" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/LZAuXnZ0rG0/work-continues.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/01/work-continues.htmltag:blogger.com,1999:blog-1409654809690469042.post-8951001693665099904Wed, 09 Jan 2013 22:50:00 +00002013-01-09T17:50:57.863-05:00ISOROSsoftwareTurtleBotTurtleBot 2TurtleBot 2 ROS Groovy ISO BETA 2<i>Round 2, Start!</i><b><br /></b><br /><br /><b>THIS <a href="http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-beta2.iso">ISO INSTALLER</a> (1.2GB) CURRENTLY ONLY SUPPORTS TURTLEBOT 2</b> however patches and bug reports for TurtleBots using the Create mobile base are appreciated. Please file bug reports via the associated github issue tracker. If you can not find the correct tracker, please file bugs against <a href="https://github.com/TurtleBot-Mfg/turtlebot-iso">https://github.com/TurtleBot-Mfg/turtlebot-iso</a><br /><br />The current plan is to release support for TurtleBot 2 later this week and then proceed with backporting support for TurtleBots with Create base.<br /><br /><div wrap="">External Debian System integration packages can be found here.<br /><a class="moz-txt-link-freetext" href="https://github.com/TurtleBot-Mfg">https://github.com/TurtleBot-Mfg</a></div><div wrap="">PPA for ROS + Ubuntu Integration<br /><a class="moz-txt-link-freetext" href="https://launchpad.net/%7Eiheartengineering/+archive/ros-support">https://launchpad.net/~iheartengineering/+archive/ros-support</a><br />TurtleBot 2 ROS Groovy ISO Beta 2 (1.2GB)</div><div wrap=""><a href="http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-beta2.iso">http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-beta2.iso</a></div><h4 wrap="">Selected Features </h4>This release resolves some minor bugs, and more importantly merges the latest packages synced from shadow-fixed.<br /><br />md5sum: 5fb0897d5995ce312e714619b1ee9781<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/eW4N6HIIopE" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/eW4N6HIIopE/turtlebot-2-ros-groovy-iso-beta-2.htmlnoreply@blogger.com (I Heart Robotics)3http://www.iheartrobotics.com/2013/01/turtlebot-2-ros-groovy-iso-beta-2.htmltag:blogger.com,1999:blog-1409654809690469042.post-3767202657305759146Fri, 04 Jan 2013 17:25:00 +00002013-01-04T18:14:37.760-05:00ISOROSsoftwareTurtleBotTurtleBot 2TurtleBot 2 ROS Groovy ISO BETA 1<div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-0DX_tNdeuiM/UOdiOe-B5nI/AAAAAAAAC-s/7NifFsfUybI/s1600/boxes.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="480" src="http://1.bp.blogspot.com/-0DX_tNdeuiM/UOdiOe-B5nI/AAAAAAAAC-s/7NifFsfUybI/s640/boxes.jpg" width="640" /></a></div><br />We are now working on fixing all of the remaining issues for a new TurtleBot 2 ROS Groovy release and if you have a TurtleBot 2 we can use your help testing.<br /><br /><b>THIS <a href="http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-beta1.iso">ISO INSTALLER</a> (1.2GB) CURRENTLY ONLY SUPPORTS TURTLEBOT 2</b> however patches and bug reports for TurtleBots using the Create mobile base are appreciated. Please file bug reports via the associated github issue tracker.<br /><br />The current plan is to release support for TurtleBot 2 next week and then proceed with backporting support for TurtleBots with Create base.<br /><br /><div wrap="">External Debian System integration packages can be found here.<br /><a class="moz-txt-link-freetext" href="https://github.com/TurtleBot-Mfg">https://github.com/TurtleBot-Mfg</a></div><div wrap="">PPA for ROS + Ubuntu Integration<br /><a class="moz-txt-link-freetext" href="https://launchpad.net/%7Eiheartengineering/+archive/ros-support">https://launchpad.net/~iheartengineering/+archive/ros-support</a><br />TurtleBot 2 ROS Groovy ISO Beta 1 (1.2GB)</div><div wrap=""><a href="http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-beta1.iso">http://data.iheartengineering.com/files/turtlebot-groovy-ubuntu-12.04.1-beta1.iso</a></div><h4 wrap="">Selected Features </h4><ul><li><a class="moz-txt-link-freetext" href="https://github.com/TurtleBot-Mfg/turtlebot-ros-groovy">https://github.com/TurtleBot-Mfg/turtlebot-ros-groovy</a></li><ul><li>rosdep automatically initialized offline for user 'ros'</li></ul><li><a class="moz-txt-link-freetext" href="https://github.com/TurtleBot-Mfg/ros-system-daemon-groovy">https://github.com/TurtleBot-Mfg/ros-system-daemon-gr1oovy</a>&nbsp;</li><ul><li>ROS runs as user 'ros'</li><li>ROS starts automatically once WiFi network is configured</li><li>rosctl replaces turtlebot-start, turtlebot-stop</li><li>logrotate used to automatically rotate logs daily and delete after a week</li><li>turtlebot-network renamed to ros-network&nbsp;</li></ul><li><a class="moz-txt-link-freetext" href="https://github.com/TurtleBot-Mfg/turtlebot-env-groovy">https://github.com/TurtleBot-Mfg/turtlebot-env-groovy</a>&nbsp;</li><ul><li>&nbsp;kobuki udev rules installed automatically</li></ul></ul><h4 wrap="">Known Bugs</h4><ul><li>turtlebot-doc-groovy installed documentation needs to be updated.</li><ul><li><a href="http://ros.org/wiki/kobuki_node">http://ros.org/wiki/kobuki_node</a></li></ul><ul><li><a href="http://kobuki.yujinrobot.com/documentation/">http://kobuki.yujinrobot.com/documentation/</a></li></ul><ul><li><a href="http://learn.iheartengineering.com/wiki/TurtleBot">http://learn.iheartengineering.com/wiki/TurtleBot </a></li></ul></ul><ul></ul><img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/NaCHvFVCjqM" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/NaCHvFVCjqM/turtlebot-2-ros-groovy-iso-beta-1.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/01/turtlebot-2-ros-groovy-iso-beta-1.htmltag:blogger.com,1999:blog-1409654809690469042.post-1215495712322666800Tue, 01 Jan 2013 10:27:00 +00002013-01-01T05:27:43.243-05:00ROS Groovy<div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-1jZJksuHJkQ/UOK144Doo4I/AAAAAAAAC-Q/lyFIquqfAKk/s1600/ellingson_groovygalapagos.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="http://4.bp.blogspot.com/-1jZJksuHJkQ/UOK144Doo4I/AAAAAAAAC-Q/lyFIquqfAKk/s640/ellingson_groovygalapagos.jpg" width="462" /></a></div>ROS Groovy is now <a href="http://www.ros.org/news/2012/12/ros-groovy-galapagos-released.html">available</a> along with <a href="https://code.ros.org/lurker/attach/3@20121231.042006.d6827cd1.attach">updated tutorials</a>.<br /><br />Having recently realized that we built <a href="https://github.com/TurtleBot-Mfg/build-turtlebot-debs">our own version of Bloom</a>,<br /><br />We are now looking forward to switching to Catkin/Bloom so we can create applications that can integrate better with <a href="https://github.com/TurtleBot-Mfg/ros-system-daemon-groovy">Ubuntu</a>/<a href="https://github.com/TurtleBot-Mfg/ros-system-workstation">XDG</a>/<a href="https://github.com/TurtleBot-Mfg/turtlebot-indicator">Indicators</a>/<a href="https://github.com/TurtleBot-Mfg/turtlebot-desktop">Unity</a>/<a href="https://github.com/TurtleBot-Mfg/turtlebot-wallpapers">etc</a> and still take advantage of the common efforts of the build tools developed for ROS.<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/nQHORa3yC-k" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/nQHORa3yC-k/ros-groovy_1.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2013/01/ros-groovy_1.htmltag:blogger.com,1999:blog-1409654809690469042.post-285103580658925254Fri, 28 Dec 2012 07:02:00 +00002012-12-28T02:02:00.852-05:00KinectOpenNIROSUpdated OpenNI libraries releasedThanks to everyone who made this happen, hopefully this fixes stability issues. More information available <a href="https://code.ros.org/lurker/attach/3@20121228.064446.1a79ca95.attach">here</a>.<img src="http://feeds.feedburner.com/~r/IHeartRobotics/~4/ff9tSEDkQgs" height="1" width="1" alt=""/>http://feedproxy.google.com/~r/IHeartRobotics/~3/ff9tSEDkQgs/updated-openni-libraries-released.htmlnoreply@blogger.com (I Heart Robotics)0http://www.iheartrobotics.com/2012/12/updated-openni-libraries-released.html