<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Technology of Robotics &#187; Software</title>
	<atom:link href="http://robotechno.us/category/robotics-tutorial/software/feed" rel="self" type="application/rss+xml" />
	<link>http://robotechno.us</link>
	<description>Robotics Technology &#124; Robotics News, Articles and Tutorial</description>
	<lastBuildDate>Tue, 15 May 2012 23:17:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Robotics Software: The Dynamic of Future</title>
		<link>http://robotechno.us/robotics-software-dynamic-future.html</link>
		<comments>http://robotechno.us/robotics-software-dynamic-future.html#comments</comments>
		<pubDate>Wed, 14 Mar 2012 05:35:53 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Robotics Articles]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[first robotics software]]></category>
		<category><![CDATA[free robotics software]]></category>
		<category><![CDATA[Lego robotics software]]></category>
		<category><![CDATA[robotics software]]></category>
		<category><![CDATA[robotics software engineer]]></category>
		<category><![CDATA[robotics software platforms]]></category>

		<guid isPermaLink="false">http://robotechno.us/?p=1542</guid>
		<description><![CDATA[Robotics software, today, develops rapidly. The experts are competing to invent the best software. Considering the raising public interest in industry field, the software war cannot be avoided. All providers are competing to invent the simplest software, although used by beginner, but it must be compatible enough to use. The challenges are rising while software [...]]]></description>
			<content:encoded><![CDATA[<p>Robotics software, today, develops rapidly. The experts are competing to invent the best software. Considering the raising public interest in industry field, the software war cannot be avoided. All providers are competing to invent the simplest software, although used by beginner, but it must be compatible enough to use. The challenges are rising while software market is always welcoming the new comers with best abilities such as Urbi.</p>
<p><a href="http://robotechno.us/robotics-software-dynamic-future.html/urbi-robotics-software" rel="attachment wp-att-1543"><img class="aligncenter size-medium wp-image-1543" title="URBi robotics software" src="http://robotechno.us/wp-content/uploads/2012/03/URBi-robotics-software-300x91.jpg" alt="URBi robotics software 300x91 Robotics Software: The Dynamic of Future" width="300" height="91" /></a></p>
<p><strong>Robotics Software: Introducing Urbi</strong></p>
<p>Urbi is an open source robotics software platform. The Robotics software is applied to many robotics projects like, for instance, Segway RMP, Lego Mainstorm, Aldebaran Nao, Goztai Jazz, Pioneer 3-DX, etc. Besides, Urbi is utilized as well by simulator program like Webots. The platform is flexible enough and easy to apply. Even though it impressed easy to apply, the platform brings about advantages such as a C++/Java middleware called UObject. It is a kind of library model which is well-matched to a robot standard API to describe motors, sensors, and algorithms. URBI is compatible as well as with ROS (Robot Operating System).<br />
<span id="more-1542"></span><br />
<strong>Robotics Software: FIRST and LEGO</strong></p>
<p>The development of robotics technology also tapped children and teenagers. Children and teenagers are some of phases of life who are not lack of creativities. The creativities are accommodated by FIRST (For Inspiration and Recognition of Science and Technology) invented by Dean Kamen the businessman. FIRST introduces younger children to the exciting world of science and technology. This program features a real-world challenge to be solved by research, critical thinking, construction, teamwork, and imagination. The contribution of FIRST in robotics software is the development of first <em>robotics software</em> released on 1 June 2012.</p>
<p>FISRT as a non-profit organization really pays attention to children’s development and achievement in the robotics world. FIRST concerns to children’s interests about robot and is willing to transmit them into positive things which become the significant of robotics software. One of FISRT concerns is the conducted FIRST LEGO League. The league aimed to introduce younger students to real-world engineering challenges by building LEGO-based robots to complete task on a thematic playing surface. FLL teams, guided by their imaginations and adult coaches, discover exciting career possibilities and, through the process, learn to make positive contribution to society. FIRST LEGO League is a place to develop the creativities of children and teenagers, who are in primary and secondary school, enriching with brilliant ideas. Through the league, they can design, build, test and program robots using LEGO robotics software called LEGO MINDSTORMS technology, apply real world math and science concepts, research challenges facing today’s scientist. They can also learn critical thinking, team building and presentation skills. They certainly can participate in tournaments and celebration.</p>
<p>Talking about Lego Mindstorms, it means that it refers to free robotics software which is popular among children, teenagers, and adults. Lego Mindstorms is robotics software which is versatile. It bring you to various Lego brick parts which are fun, moreover it is not costly. It is easy to use by everyone. One of the recommended devices of Lego Mindstorms is LEGO Mindstorms NXT 2.0. It is centered on NXT intelligent brick consisting of 32-bit microprocessor, an LCD display, 4 input ports, 3 output ports, Bluetooth support, and a USB port. Another device consists of two touch sensors, an ultrasonic range sensor, a color sensor, three motor-powered servos are included, and some other devices such as wheel and treads. The device costs about $280.99 from the Lego store, but software for “robot simple” is free.</p>
<p><strong>Robotics Software: Employment Opportunities</strong></p>
<p>The development of robotics software is growing rapidly. If you are interested to join with the team dedicated to the software of robotics, you can go to Bluefin Robotics. It is very good opportunities if you can join with Bluesfin Robotics. The job descriptions of Bluesfin Robotics are, first, designing, implementing and modifying next generation AUV software. Second, being the lead software developer on project requiring software expertise. Third, working with engineers from other department including Electrical, Mechanical, Manufacturing and Operations Engineering on our AUV System.</p>
<p>The qualifications required certainly you must have robotics software engineering with the provisions, first, Bachelor’s degree in computer science or strong practical computer experience. Second, you must have excellent programming skills, particularly in C/C++. Third, you also have to possess ability and desire to work in an energetic, multi-disciplinary environment with top-notch engineer. Fourth, one or more of the following would be a plus: Linux, Windows, hardware experience, EE and/or ME experience. Fifth, no prior experience with AUVs required. Therefore, if you have accomplished the qualifications above, feel free to follow the dynamic development of <span style="text-decoration: underline;">robotics software</span>.</p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/lego-mindstorms-nxt.html" rel="bookmark">LEGO Mindstorms NXT</a> <br />Sure, Mindstorms NXT is a toy, but it is an important toy, like a piano or a chemistry set. It's one of those items that engages an imagination and possibly opens doors to new interests. Since our future is surely to be shared with robots--it's already started happening, just look ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/latest-robotics-release-by-microsoft.html" rel="bookmark">Latest robotics release by Microsoft</a> <br />Microsoft released the latest version of its robot-building platform for professionals and hobbyists of the Lego Mindstorms AlphaRex level. This robotics news come from cnet.com, said about Microsoft's latest robotics release... here the news: Microsoft released the latest revision of its robotics development software platform at the RoboDevelopment Conference and ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/new-robotics-curriculum-to-inspire-technology-leaders-of-tomorrow.html" rel="bookmark">New Robotics Curriculum to Inspire Technology Leaders of Tomorrow</a> <br />News in robotics world, Curriculum in robotics released... Innovation First, Inc. and Autodesk, Inc. Release New Robotics Curriculum to Inspire Technology Leaders of Tomorrow. Autodesk VEX Robotics Curriculum Promotes Hands-on Learning by Bringing Robotics and Digital Design Education into the Classroom GREENVILLE, Texas &amp; SAN RAFAEL, Calif.--(BUSINESS WIRE)--To spur greater ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/explanation-arduino.html" rel="bookmark">Few explanation about the Arduino</a> <br />What is Arduino? Arduino is a tool for making computers that can sense and control the physical world through your computer. It is a development platform open-source physical computing, based on a simple microcontroller board and a development environment for creating software (programs) for the board. Arduino can use to ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/balancing-lego-robot.html" rel="bookmark">Self balancing LEGO robot</a> <br />This Self balancing LEGO robot idea may be somewhat outdated, but I want to discuss it because the ideas are simple and easy to build using LEGO robots. Balancing robot on two wheels is a little complicated in design realization for some people, this is partly true. Making such robots ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/robotics-software-dynamic-future.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arduino Tutorial: Use a Piezo Element to Detect Vibration</title>
		<link>http://robotechno.us/arduino-tutorial-piezo-element-detect-vibration.html</link>
		<comments>http://robotechno.us/arduino-tutorial-piezo-element-detect-vibration.html#comments</comments>
		<pubDate>Sat, 26 Nov 2011 09:21:47 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Arduino Tutorials]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Microcontroller]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Robotics Tutorial]]></category>
		<category><![CDATA[Sensors]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[arduino piezo element sensor]]></category>
		<category><![CDATA[Arduino Tutorial]]></category>
		<category><![CDATA[use a piezo element to detect vibration]]></category>
		<category><![CDATA[vibration detector arduino]]></category>

		<guid isPermaLink="false">http://robotechno.us/?p=1293</guid>
		<description><![CDATA[Arduino Tutorial: Use a Piezo Element to Detect Vibration. This tutorial shows you how to use a Piezo element to detect vibration, in this case, a knock on a door, table, or other solid surface. A piezo is an electronic device that generates a voltage when it&#8217;s physically deformed by a vibration, sound wave, or [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://robotechno.us/arduino-tutorial-piezo-element-detect-vibration.html/circuit-connection-piezo-element-to-detect-vibration" rel="attachment wp-att-1295"><img class="aligncenter size-medium wp-image-1295" title="circuit connection - Piezo element to detect vibration" src="http://robotechno.us/wp-content/uploads/2011/11/circuit-connection-Piezo-element-to-detect-vibration-279x300.jpg" alt="circuit connection Piezo element to detect vibration 279x300 Arduino Tutorial: Use a Piezo Element to Detect Vibration" width="279" height="300" /></a></p>
<p>Arduino Tutorial: Use a Piezo Element to Detect Vibration. This tutorial shows you how to use a Piezo element to detect vibration, in this case, a knock on a door, table, or other solid surface.</p>
<p>A piezo is an electronic device that generates a voltage when it&#8217;s physically deformed by a vibration, sound wave, or mechanical strain. Similarly, when you put a voltage across a piezo, it vibrates and creates a tone. Piezos can be used both to play tones and to detect tones.<br />
<span id="more-1293"></span><br />
The sketch reads the piezos output using the <code><strong>analogRead()</strong></code> command, encoding the voltage range from 0 to 5 volts to a numerical range from 0 to 1023 in a process referred to as analog-to-digital conversion, or ADC.</p>
<p>If the sensors output is stronger than a certain threshold, your Arduino will send the string &#8220;Knock!&#8221; to the computer over the serial port.</p>
<p>Open the serial monitor to see this text.</p>
<p><strong>Hardware Required</strong></p>
<ul>
<li>Arduino Board</li>
<li>(1) Piezo electric disc</li>
<li>(1) Megohm resistor</li>
<li>solid surface</li>
</ul>
<p>Piezos are polarized, meaning that voltage passes through them (or out of them) in a specific direction. Connect the black wire (the lower voltage) to ground and the red wire (the higher voltage) to analog pin 0. Additionally, connect a 1-megohm resistor in parallel to the Piezo element to limit the voltage and current produced by the piezo and to protect the analog input.</p>
<p>It is possible to acquire piezo elements without a plastic housing. These will look like a metallic disc, and are easier to use as input sensors. PIezo sensors work best when firmly pressed against, taped, or glued their sensing surface.</p>
<p>Schematic Diagram:</p>
<p><a href="http://robotechno.us/arduino-tutorial-piezo-element-detect-vibration.html/schematic-diagram-piezo-element-to-detect-vibration" rel="attachment wp-att-1294"><img class="aligncenter size-medium wp-image-1294" title="schematic diagram - Piezo element to detect vibration" src="http://robotechno.us/wp-content/uploads/2011/11/schematic-diagram-Piezo-element-to-detect-vibration-292x300.jpg" alt="schematic diagram Piezo element to detect vibration 292x300 Arduino Tutorial: Use a Piezo Element to Detect Vibration" width="292" height="300" /></a></p>
<p>A Piezo to attached to analog pin 0 with a 1-Megohm resistor</p>
<p><strong>Code</strong></p>
<p>In the code below, the incoming piezo data is compared to a threshold value set by the user. Try raising or lowering this value to increase your sensor&#8217;s overall sensitivity.</p>
<blockquote><p>/* Knock Sensor<br />
This sketch reads a piezo element to detect a knocking sound.<br />
It reads an analog pin and compares the result to a set threshold.<br />
If the result is greater than the threshold, it writes<br />
&#8220;knock&#8221; to the serial port, and toggles the LED on pin 13.<br />
The circuit:<br />
* + connection of the piezo attached to analog in 0<br />
* &#8211; connection of the piezo attached to ground<br />
* 1-megohm resistor attached from analog in 0 to ground</p>
<p>http://www.arduino.cc/en/Tutorial/Knock</p>
<p>created 25 Mar 2007<br />
by David Cuartielles<br />
modified 4 Sep 2010<br />
by Tom Igoe<br />
This example code is in the public domain.<br />
*/<br />
// these constants won&#8217;t change:<br />
const int ledPin = 13; // led connected to digital pin 13<br />
const int knockSensor = A0; // the piezo is connected to analog pin 0<br />
const int threshold = 100; // threshold value to decide when the detected sound is a knock<br />
or not<br />
// these variables will change:<br />
int sensorReading = 0; // variable to store the value read from the sensor pin<br />
int ledState = LOW; // variable used to store the last LED status, to toggle the light<br />
void setup() {<br />
pinMode(ledPin, OUTPUT); // declare the ledPin as as OUTPUT<br />
Serial.begin(9600); // use the serial port<br />
}<br />
void loop()<br />
// read the sensor and store it in the variable sensorReading:<br />
sensorReading = analogRead(knockSensor);<br />
// if the sensor reading is greater than the threshold:<br />
if (sensorReading &gt;= threshold) {<br />
// toggle the status of the ledPin:<br />
ledState = !ledState;<br />
// update the LED pin itself:<br />
digitalWrite(ledPin, ledState);<br />
// send the string &#8220;Knock!&#8221; back to the computer, followed by newline<br />
Serial.println(&#8220;Knock!&#8221;);<br />
}<br />
delay(100); // delay to avoid overloading the serial port buffer<br />
}</p></blockquote>
<p>Download the Arduino Tutorial: Use a Piezo Element to Detect Vibration in PDF document:<br />
» <strong><a target="_blank" title="Arduino Tutorial: Use a Piezo Element to Detect Vibration" href="http://myfilehost.us/dll/wqd1sx" target="_blank">Download Link</a></strong></p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/arduino-tutorial-collection-wiring-code.html" rel="bookmark">Arduino Tutorial: Controlling the LED&#8217;s Blinking Rates using Potensiometer</a> <br />This is a tutorial about controlling the LED's blinking rates using potensiometer. A potentiometer is really a simple knob that gives a adjustable resistance, which we are able to read into the Arduino board as an analog value. In this simple tutorial, you will see how the resistance value of ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/voltage-comparator.html" rel="bookmark">Voltage Comparator</a> <br />In electronics, a comparator is a device which compares two voltages or currents and switches its output to indicate which is larger. More generally, the term is also used to refer to a device that compares two items of data. Output voltage will "switch" whenever the input voltage (at the ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/avr-line-following-robot-tutorial.html" rel="bookmark">AVR Line Following Robot Tutorial</a> <br />Block Diagram The robot uses IR sensors to sense the line, an array of 8 IR LEDs&lt; (Tx) and sensors (Rx), facing the ground has been used in this setup. The output of the sensors is an analog signal which depends on the amount of light reflected back, this analog ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/arduino-hardware-part-2.html" rel="bookmark">Arduino Hardware (Part 2)</a> <br />This article is a continuation of Arduino hardware part 1 that talks about Arduino Board, COMMUNICATION CABLE (Serial / USB), Arduino power supply, PC / LAPTOP +-USB Serial Adapter.  In this section we will discuss more  about Arduino Hardware : With what Arduino elements can interact?, Arduino Prototyping, etc. The Arduino ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/arduino-uno-schematic-board-software-tutorial.html" rel="bookmark">Arduino UNO Schematic, Board, Software and Tutorial</a> <br />Here the Arduino UNO Schematic, Board, Software and Tutorial... Arduino is already widely used for robotics applications, so i think you need to learn about Arduino.. :) Arduino UNO Board: Arduino UNO Schematic: &nbsp; Adruino UNO Schematic and PCB Design Download: EAGLE files (rev2): arduino-uno-rev2-reference-design.zip Schematic (rev2): arduino-uno-rev2-schematic.pdf EAGLE files ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/arduino-tutorial-piezo-element-detect-vibration.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AVR-GCC : CODE COMPLIANCE</title>
		<link>http://robotechno.us/avrgcc-code-compliance.html</link>
		<comments>http://robotechno.us/avrgcc-code-compliance.html#comments</comments>
		<pubDate>Wed, 27 Jul 2011 10:10:26 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[AVR microcontrollers]]></category>
		<category><![CDATA[AVR-GCC]]></category>
		<category><![CDATA[programming AVR microcontrollers]]></category>
		<category><![CDATA[WinAVR patch]]></category>

		<guid isPermaLink="false">http://robotechno.us/?p=1027</guid>
		<description><![CDATA[On the Internet there are many examples of code for AVR-GCC , written using functions and macros that are no longer supported in newer versions of the compiler. To use these examples and understand them with the essence of the ports of the microcontroller, you need to rewrite code or use special macros. For starters, [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://robotechno.us/avrgcc-code-compliance.html/avr-gcc" rel="attachment wp-att-1028"><img class="size-full wp-image-1028 aligncenter" title="AVR-GCC" src="http://robotechno.us/wp-content/uploads/2011/07/AVR-GCC.jpg" alt="AVR GCC AVR GCC : CODE COMPLIANCE" width="296" height="206" /></a></p>
<p>On the Internet there are many examples of code for AVR-GCC , written using functions and macros that are no longer supported in newer versions of the compiler. To use these examples and understand them with the essence of the ports of the microcontroller, you need to rewrite code or use special macros.</p>
<p><span id="more-1027"></span>For starters, learn programming AVR microcontrollers, this approach can be difficult. As a result, many go to other compilers and never use a cult which has become for many a development environment WinAVR. Although there is a simple way to solve all the problems and return again rejected by the developers of the functions in AVR-GCC. You can use a specially crafted <a target="_blank" href="http://myfilehost.us/dll/mtrion" rel="nofollow" target="_blank">AVR-GCC myROBOT PATCH for WinAVR</a> .</p>
<p>Before we proceed to the description of the patch, let&#8217;s see what kind of function it returns. The latest versions of libraries avr-libc, which is part of the compiler AVR-GCC, uses a WinAVR, more functions are not supported inp , outp , sbi and CBI . Made it to the best interpretation of the source code when it is compiled and determine how to handle the port &#8211; how to register or to memory. Support for these functions is not starting from WinAVR-20050214 version. This includes no support for such a popular and convenient for many of the former bit_is_set and bit_is_clear .</p>
<p>Of course, nobody calls using only the &#8220;old&#8221; functions return the patch is backward-compatible programs on the AVR -GCC. Using the patch, you will not lose the ability to work with the new notation, and only return the use of excluded functions. For example, checking the work of any one found on the Internet example, you can practice by rewriting it with the new syntax.<br />
In conclusion, let us consider some examples of possible replacements.</p>
<table width="100%" border="1" cellspacing="0" cellpadding="5">
<tbody>
<tr bgcolor="#ececf0">
<td align="center"><strong><span><span>&#8220;Old&#8221; notation</span></span></strong></td>
<td align="center"><strong><span><span>possible replacement</span></span></strong></td>
<td align="center"><strong><span><span>an action to perform</span></span></strong></td>
</tr>
<tr>
<td><kbd><span><span>outp (0xff, DDRB);</span></span></kbd></td>
<td><kbd><span><span>DDRB = 0xff;</span></span></kbd></td>
<td><kbd><span><span>all port pins configured as outputs B</span></span></kbd></td>
</tr>
<tr>
<td><kbd><span><span>outp (0xff, PORTB);</span></span></kbd></td>
<td><kbd><span><span>PORTB = 0xff;</span></span></kbd></td>
<td><kbd><span><span>all bits of Port B set to "1"</span></span></kbd></td>
</tr>
<tr>
<td><kbd><span><span>sbi (DDRB, DDB2);</span></span></kbd></td>
<td><kbd><span><span>DDRB | = 1 &lt;&lt;2;</span></span></kbd></td>
<td><kbd><span><span>configure the line 2 port B as output</span></span></kbd></td>
</tr>
<tr>
<td><kbd><span><span>cbi (DDRB, DDB2);</span></span></kbd></td>
<td><kbd><span><span>DDRB &amp; = ~ (1 &lt;&lt;2);</span></span></kbd></td>
<td><kbd><span><span>configure the line 2 port B as input</span></span></kbd></td>
</tr>
<tr>
<td><kbd><span><span>sbi (PORTB, PB2);</span></span></kbd></td>
<td><kbd><span><span>PORTB | = _BV (PB2); </span></span><br />
<span><span>or simply </span></span><br />
<span><span>PORTB | = 1 </span></span><kbd><span><span>&lt;&lt;</span></span></kbd><span><span> 2; </span></span><br />
<span><span>possible so </span></span><br />
<span><span>PORTB | = 1 </span></span><kbd><span><span>&lt;&lt;</span></span></kbd><span><span> PINB2;</span></span></kbd></td>
<td><kbd><span><span>set to "1" on line 2 </span></span><br />
<span><span>port B</span></span></kbd></td>
</tr>
<tr>
<td><kbd><span><span>cbi (PORTB, PB2);</span></span></kbd></td>
<td><kbd><span><span>PORTB &amp; = ~ _BV (PB2); </span></span><br />
<span><span>or simply </span></span><br />
<span><span>PORTB &amp; = ~ (1 &lt;&lt;2), </span></span><br />
<span><span>possibly because </span></span><br />
<span><span>PORTB &amp; = ~ 1 </span></span><kbd><span><span>&lt;&lt;</span></span></kbd><span><span> PINB2;</span></span></kbd></td>
<td><kbd><span><span>set to "0" on Line 2 </span></span><br />
<span><span>port B</span></span></kbd></td>
</tr>
<tr>
<td><kbd><span><span>if (bit_is_set (PIND, 3)) </span></span><br />
<span><span>{ </span></span><br />
<span><span>... </span></span><br />
<span><span>}</span></span></kbd></td>
<td><kbd><span><span>if (PIND &amp; (1 </span></span><kbd><span><span>&lt;&lt;</span></span></kbd><span><span> PIND3)) </span></span><br />
<span><span>{ </span></span><br />
<span><span>... </span></span><br />
<span><span>}</span></span></kbd></td>
<td><kbd><span><span>check "1" on line 3 of port D</span></span></kbd></td>
</tr>
<tr>
<td><kbd><span><span>if (bit_is_clear (PIND, 3)) </span></span><br />
<span><span>{ </span></span><br />
<span><span>... </span></span><br />
<span><span>}</span></span></kbd></td>
<td><kbd><span><span>if (! (PIND &amp; (1 </span></span><kbd><span><span>&lt;&lt;</span></span></kbd><span><span> PIND3))) </span></span><br />
<span><span>{ </span></span><br />
<span><span>... </span></span><br />
<span><span>}</span></span></kbd></td>
<td><kbd><span><span>check the "0" on line 3 of port D</span></span></kbd></td>
</tr>
</tbody>
</table>
<p>Please note that _BV () is preferable because in this case, the compiler performs a bitwise shift and inserts the result in the compiled code. This ensures that no time spent during direct execution of code in the microcontroller.<br />
As you can see, the possibilities of syntax in the AVR-GCC wide enough to consider him one of the most convenient and flexible means of programming microcontrollers Atmel AVR.</p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/avr-gcc-microcontrollers-port-management-2.html" rel="bookmark">AVR GCC : Microcontrollers Port Management (Part 1)</a> <br />Management of the ports in the AVR GCC. Registers and DDRx PORTx. FSE. Bitwise operations. The function of delay. Unconditional jump in the program. Ports of the microcontroller - this I / O devices, allowing the microcontroller to send or receive data. The default port of the AVR microcontroller has ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/avr-gcc-microcontrollers-port-management-part-2.html" rel="bookmark">AVR GCC : Microcontrollers Port Management (Part 2 end)</a> <br />A continuation of the article AVR GCC : Microcontrollers Port Management (Part 1). &gt;&gt;Once the data transfer direction for the port is configured, you can set the port value to be stored in the appropriate register PORTx. PORTx - register the port, where x is the port name. If the output is ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/the-atmel-avr-and-its-development-hardware-up-close.html" rel="bookmark">The Atmel AVR and its Development Hardware Up Close</a> <br />The AVR series consists of a fairly broad range of hybrid-bit-width microcontrollers (nominally 16-bit code word, 8-bit data bus and ALU) sharing a common instruction set and differing primarily in the on-chip peripherals and package options. These devices donÃ¢â‚¬â„¢t show a clear genealogical relationship to any other microcontroller core IÃ¢â‚¬â„¢m ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/book-c-programming-for-avr-microcontrollers.html" rel="bookmark">Book: C Programming for AVR Microcontrollers</a> <br />This can be used as reference book for  AVR microcontroller programming. As we know, AVR family is cheap, easy and the most used microcontroller in Robotics. By the time you complete the text and projects you will: • Have an intermediate understanding of the C programming language. • Have a ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/nanovm-java-wirtual-machine-atmel-avr-atmega8atmega832.html" rel="bookmark">NanoVM: Java Wirtual Machine for Atmel AVR ATmega8/ATmega832</a> <br />Java programming for microcontroller chips, With the NanoVM, the microcontroller can be programmed in the popular Java language using the standard Sun JDK. NanoVM is a open-source implementation of the Java virtual machine. The NanoVM was initially developed to run on the Atmel AVR ATmega8 utilized in the Asuro Robot. ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/avrgcc-code-compliance.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NanoVM: Java Wirtual Machine for Atmel AVR ATmega8/ATmega832</title>
		<link>http://robotechno.us/nanovm-java-wirtual-machine-atmel-avr-atmega8atmega832.html</link>
		<comments>http://robotechno.us/nanovm-java-wirtual-machine-atmel-avr-atmega8atmega832.html#comments</comments>
		<pubDate>Tue, 14 Jun 2011 22:19:14 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Microcontroller]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[atmel avr java programming]]></category>
		<category><![CDATA[java programming microcontroller]]></category>
		<category><![CDATA[NanoVM]]></category>
		<category><![CDATA[NanoVM java virtual machine]]></category>
		<category><![CDATA[NanoVM microcontroller]]></category>
		<category><![CDATA[program robot using java]]></category>

		<guid isPermaLink="false">http://robotechno.us/?p=910</guid>
		<description><![CDATA[Java programming for microcontroller chips, With the NanoVM, the microcontroller can be programmed in the popular Java language using the standard Sun JDK. NanoVM is a open-source implementation of the Java virtual machine. The NanoVM was initially developed to run on the Atmel AVR ATmega8 utilized in the Asuro Robot. It was ported to run [...]]]></description>
			<content:encoded><![CDATA[<p>Java programming for microcontroller chips, With the NanoVM, the microcontroller can be programmed in the popular Java language using the <a target="_blank" rel="external nofollow" href="http://java.sun.com/j2se/" target="_blank">standard Sun JDK</a>.<br />
<a rel="attachment wp-att-911" href="http://robotechno.us/nanovm-java-wirtual-machine-atmel-avr-atmega8atmega832.html/nanowm-atmel-microcontroller-java-virtual-machine"><img class="size-medium wp-image-911 aligncenter" title="NanoWM Atmel Microcontroller Java Virtual Machine" src="http://robotechno.us/wp-content/uploads/2011/06/NanoWM-Atmel-Microcontroller-Java-Virtual-Machine-300x140.jpg" alt="NanoWM Atmel Microcontroller Java Virtual Machine 300x140 NanoVM: Java Wirtual Machine for Atmel AVR ATmega8/ATmega832" width="300" height="140" /></a></p>
<p>NanoVM is a open-source implementation of the Java virtual machine. The NanoVM was initially developed to run on the Atmel AVR ATmega8 utilized in the Asuro Robot. It was ported to run on the C&#8217;t-Bot and the Nibo-robot and can easily be ported to other AVR-based systems.</p>
<p>The virtual machine uses almost 8 kilobytes of code memory (entire flash in case of ATmega8) and 256 bytes of RAM. Each and every user&#8217;s .class are processed by NanoVM&#8217;s Converter which transforms it into 1 bytecode file. Unique tools next send this file via serial line into device. For this operation is valuable NanoVM&#8217;s bootloader (alternatively you are able to use ISP programmer like: PonyProg) which store this content on-chip EEPROM.</p>
<p><span id="more-910"></span>NanoVM is not a full featured Java VM and it will never be.  It will constantly be limited to a tiny subset of the java language along with the regular java libraries plus a few application certain strategies. Furthermore, it really is not meant to replace C as the standard way of programming microcontrollers. It is much less flexible and has a lower performance than C or assembler programs.</p>
<p>The NanoVM is actually a method to present a limited but controllable programming interface to a microcontroller based device. With most of essentially the most hardware specific code being portion of the NanoVM itself, the user can focus on the application itself. If a user is given a device equipped using the NanoVM he is not needed to consider the hardware itself. Moreover, he does not need any target distinct compilers or the like. All he wants is a standard java compiler as well as the NanoVMTool which itself is written in java. Thus, the whole development chain works on any device that has a java compiler and can run java code. Using the hardware abstraction the NanoVM gives, the user doesn&#8217;t even have to care about the microcontroller type the target is based on. The very same java compiler as well as the identical NanoVMTool could be used with any NanoVM based program running on any sort of microontroller.</p>
<p>NanoWM documentation and download area: go to <a target="_blank" rel="external nofollow" href="http://www.harbaum.org/till/nanovm/index.shtml" target="_blank">this page</a></p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/bootloader-tutorial-atmel-atmega-microcontroller.html" rel="bookmark">Bootloader Tutorial for Atmel ATMega Microcontroller</a> <br />Tutorial regarding bootloader on Atmel microcontroller below are taken from societyofrobots.com This tutorial explains all things related to the Atmel bootloader, including source code, how to install, programming, modification and uploading bootloader. Tutorial document of Bootloader Tutorial for Atmel ATMega Microcontroller: Download Link Note: You must have the files required, ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/microcontroller-ebook-c-programming-for-microcontrollers.html" rel="bookmark">Microcontroller Ebook: C Programming for Microcontrollers</a> <br />C Programming for Microcontrollers - Featuring ATMEL's AVR Butterfly and the free WinAVR Compiler Introduction C Programming and microcontrollers are two big topics, practically continental in size, and like continents, are easy to get lost in. Combining the two is a little like traipsing from Alaska to Tierra del Fuego. ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/msp430-microcontroller-tutorial.html" rel="bookmark">MSP430 Microcontroller Tutorial</a> <br />Do you want to build a robot using MSP430 microcontroller..? Then you should know the basic knowledge of MSP430 microcontroller. This MSP430 tutorial will show you how MSP430 works (included: MSP430 sample code). Microcontrollers are binary computers and so they operate on the basis of binary numbers. Binary numbers consist ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/explanation-arduino.html" rel="bookmark">Few explanation about the Arduino</a> <br />What is Arduino? Arduino is a tool for making computers that can sense and control the physical world through your computer. It is a development platform open-source physical computing, based on a simple microcontroller board and a development environment for creating software (programs) for the board. Arduino can use to ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/the-atmel-avr-and-its-development-hardware-up-close.html" rel="bookmark">The Atmel AVR and its Development Hardware Up Close</a> <br />The AVR series consists of a fairly broad range of hybrid-bit-width microcontrollers (nominally 16-bit code word, 8-bit data bus and ALU) sharing a common instruction set and differing primarily in the on-chip peripherals and package options. These devices donÃ¢â‚¬â„¢t show a clear genealogical relationship to any other microcontroller core IÃ¢â‚¬â„¢m ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/nanovm-java-wirtual-machine-atmel-avr-atmega8atmega832.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Make a Robot : A Step by Step Robot Tutorial</title>
		<link>http://robotechno.us/robot-step-step-robot-tutorial.html</link>
		<comments>http://robotechno.us/robot-step-step-robot-tutorial.html#comments</comments>
		<pubDate>Mon, 28 Mar 2011 22:54:17 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Mechanics]]></category>
		<category><![CDATA[Microcontroller]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Robotics Tutorial]]></category>
		<category><![CDATA[Sensors]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[build a robot]]></category>
		<category><![CDATA[make a robot]]></category>
		<category><![CDATA[robot design]]></category>
		<category><![CDATA[robot tutorial]]></category>
		<category><![CDATA[step by step robot tutorial]]></category>

		<guid isPermaLink="false">http://robotechno.us/?p=796</guid>
		<description><![CDATA[This tutorial will show you how to make a robot easily. It&#8217;s very simple tutorial and of course it will be a low cost robot. You will get the knowledge about basic and simple mechanic design, simple robot schematic diagram, line following sensor, programming and more&#8230; This is a very great explanation of the tutorial [...]]]></description>
			<content:encoded><![CDATA[<p>This tutorial will show you how to make a robot easily. It&#8217;s very simple tutorial and of course it will be a low cost robot. You will get the knowledge about basic and simple mechanic design, simple robot schematic diagram, line following sensor, programming and more&#8230; This is a very great explanation of the tutorial how to make a robot. <img src='http://robotechno.us/wp-includes/images/smilies/icon_smile.gif' alt="icon smile Make a Robot : A Step by Step Robot Tutorial" class='wp-smiley' title="Make a Robot : A Step by Step Robot Tutorial" /> </p>
<p style="text-align:center;"><a rel="attachment wp-att-797" href="http://robotechno.us/robot-step-step-robot-tutorial.html/make-a-robot"><img class="size-medium wp-image-797 aligncenter" title="make a robot" src="http://robotechno.us/wp-content/uploads/2011/03/make-a-robot-300x169.jpg" alt="make a robot 300x169 Make a Robot : A Step by Step Robot Tutorial" width="300" height="169" /></a></p>
<p>Download the document of step by step <strong>Make a Robot</strong> tutorial:<br />
<span id="more-796"></span><strong><a target="_blank" rel="external nofollow" href="http://downloads.computerhowto.us/dll/nv6izo">Download Link</a></strong></p>
<p>Go to online page of how to <strong>make a robot</strong>:<br />
<strong><a target="_blank" rel="external nofollow" href="http://www.societyofrobots.com/step_by_step_robot.shtml">Visit the page</a></strong></p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/pic16f877a-tutorial.html" rel="bookmark">PIC16F877A Tutorial</a> <br />This PIC16F877A tutorial document was written Lukas Hoffmann. This tutorial containing the explanation about microcontroller PIC16F877A and the sample code using C/C++ programming language. There are some simple interesting project in this tutorial such as how to make blinking LED, how to display message on computer screen, how to drive ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/msp430-microcontroller-tutorial.html" rel="bookmark">MSP430 Microcontroller Tutorial</a> <br />Do you want to build a robot using MSP430 microcontroller..? Then you should know the basic knowledge of MSP430 microcontroller. This MSP430 tutorial will show you how MSP430 works (included: MSP430 sample code). Microcontrollers are binary computers and so they operate on the basis of binary numbers. Binary numbers consist ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/lego-robotic-tutorial.html" rel="bookmark">Lego Robotic Tutorial</a> <br />This is the robot tutorial collection about how to control your Lego robot. Lego is often conduct robot competition, by studying this tutorial, you will more easily understand about your lego robot and you will be more confident to partisipate the lego competition. This tutorial contains the Lego robotic tutorial: ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/line-follower-tutorial-based-atmega16-l298-motor-driver.html" rel="bookmark">Line Follower Tutorial based on ATMega16 + L298 Motor Driver</a> <br />Here the another Line Follower robot tutorial... The diagram is quite simple and easy to build, easy to understand. The robot mechanical design not included, you may create the shape and the mechanical design of your line follower robot by your self. Just use motor gear box which have high ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/vex-robotics-tutorial.html" rel="bookmark">Vex Robotics Tutorial</a> <br />This is the tutorial document of Vex robotics building. You may download the tutorial, it's very useful if you're attending Vex robotics competition. Vex robot is a great idea to design the shape of robot and to study the robot mechanism for children. You can learn more about robotics together ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/robot-step-step-robot-tutorial.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bootloader Tutorial for Atmel ATMega Microcontroller</title>
		<link>http://robotechno.us/bootloader-tutorial-atmel-atmega-microcontroller.html</link>
		<comments>http://robotechno.us/bootloader-tutorial-atmel-atmega-microcontroller.html#comments</comments>
		<pubDate>Wed, 19 Jan 2011 21:56:15 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Microcontroller]]></category>
		<category><![CDATA[Robotics Tutorial]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[atmega bootloader]]></category>
		<category><![CDATA[atmel atmega bootloader]]></category>
		<category><![CDATA[create atmega bootloader]]></category>
		<category><![CDATA[program atmega bootloader]]></category>

		<guid isPermaLink="false">http://robotechno.us/?p=640</guid>
		<description><![CDATA[Tutorial regarding bootloader on Atmel microcontroller below are taken from societyofrobots.com This tutorial explains all things related to the Atmel bootloader, including source code, how to install, programming, modification and uploading bootloader. Tutorial document of Bootloader Tutorial for Atmel ATMega Microcontroller: Download Link Note: You must have the files required, go to this original page [...]]]></description>
			<content:encoded><![CDATA[<p>Tutorial regarding bootloader on Atmel microcontroller below are taken from societyofrobots.com</p>
<p style="text-align: center;"><a rel="attachment wp-att-641" href="http://robotechno.us/bootloader-tutorial-atmel-atmega-microcontroller.html/atmel-atmega-bootloader"><img class="size-medium wp-image-641 aligncenter" title="atmel atmega bootloader" src="http://robotechno.us/wp-content/uploads/2011/01/atmel-atmega-bootloader-300x135.jpg" alt="atmel atmega bootloader 300x135 Bootloader Tutorial for Atmel ATMega Microcontroller" width="300" height="135" /></a></p>
<p>This tutorial explains all things related to the Atmel bootloader, including source code, how to install, programming, modification and uploading bootloader.</p>
<p><span id="more-640"></span>Tutorial document of <strong>Bootloader Tutorial for Atmel ATMega Microcontroller</strong>:<br />
<strong><a target="_blank" rel="external nofollow" href="http://downloads.circuitdiagram.net/dll/tzraec">Download Link</a></strong></p>
<p>Note: You must have the files required, go to this <strong><a target="_blank" rel="external nofollow" href="http://www.societyofrobots.com/bootloader_50_robot.shtml">original page</a></strong> to download the files.</p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/nanovm-java-wirtual-machine-atmel-avr-atmega8atmega832.html" rel="bookmark">NanoVM: Java Wirtual Machine for Atmel AVR ATmega8/ATmega832</a> <br />Java programming for microcontroller chips, With the NanoVM, the microcontroller can be programmed in the popular Java language using the standard Sun JDK. NanoVM is a open-source implementation of the Java virtual machine. The NanoVM was initially developed to run on the Atmel AVR ATmega8 utilized in the Asuro Robot. ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/8051-microcontroller-tutorial.html" rel="bookmark">8051 Microcontroller Tutorial</a> <br />This is the document about microcontroller 8051 tutorial. 8051 is one of the most popular microcontroller used by the hobbyst. The 8051 architecture provides many functions (CPU, RAM, ROM, I/O, interrupt logic, timer, etc.) in a single package. A particularly useful feature of the 8051 core is the inclusion of ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/msp430-microcontroller-tutorial.html" rel="bookmark">MSP430 Microcontroller Tutorial</a> <br />Do you want to build a robot using MSP430 microcontroller..? Then you should know the basic knowledge of MSP430 microcontroller. This MSP430 tutorial will show you how MSP430 works (included: MSP430 sample code). Microcontrollers are binary computers and so they operate on the basis of binary numbers. Binary numbers consist ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/line-follower-robot-tutorial-atmega8535.html" rel="bookmark">Line Follower Robot Tutorial (ATMega8535)</a> <br />Build your own line follower / line tracker robotâ€¦! Microcontroller : Atmel ATMega8535 Sensor: 6 photodioda sensor Motor driver : L298 dual driver (up to 1A of electric current) Download the full tutorial include schematic diagram and program code ( C language ): Download link</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/philips-87lpc760-microcontroller-tutorial-application.html" rel="bookmark">Philips 87LPC760 Microcontroller Tutorial and Application</a> <br />I've collected the Philips 87LPC76x microcontroller tutorial and some application/project using this microcontroller in a zip file. The tutorial file contains below documents: Simple 87LPC76x Microcontroller Tutorial Using the 87LPC76X microcontroller as an I2C bus master Using the 87LPC76X in multi-master I22C applications Using the Philips 87LPC76x microcontroller as a ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/bootloader-tutorial-atmel-atmega-microcontroller.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Robot Operating System (ROS)</title>
		<link>http://robotechno.us/robot-operating-system-ros.html</link>
		<comments>http://robotechno.us/robot-operating-system-ros.html#comments</comments>
		<pubDate>Mon, 16 Nov 2009 13:55:04 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[robot control]]></category>
		<category><![CDATA[robot design]]></category>
		<category><![CDATA[Robot Operating System]]></category>
		<category><![CDATA[robot software]]></category>
		<category><![CDATA[ros]]></category>

		<guid isPermaLink="false">http://robotechno.us/?p=309</guid>
		<description><![CDATA[ROS is a community effort, with many institutions contributing to its development. Much of the underlying platform is being developed by Willow Garage and Stanford. ROS is a robot operating system originally developed (2007) in the Stanford Artificial Intelligence Laboratory in support of the Stanford AI Robot (STAIR) project but now (as of 2008) developed [...]]]></description>
			<content:encoded><![CDATA[<p>ROS is a community effort, with many institutions contributing to its development. Much of the underlying platform is being developed by Willow Garage and Stanford.</p>
<p style="text-align: center;"><a target="_blank" title="robot operating" href="http://schematics.circuitdiagram.net/viewer.php?id=bwy1258379486d.jpg"><img class="aligncenter" src="http://schematics.circuitdiagram.net/thumbs/bwy1258379486d.jpg" border="0" alt="bwy1258379486d Robot Operating System (ROS)"  title="Robot Operating System (ROS)" /></a></p>
<p>ROS is a robot operating system originally developed (2007) in the Stanford Artificial Intelligence Laboratory in support of the Stanford AI Robot (STAIR) project but now (as of 2008) developed primarily by Willow Garage, a <a href="http://robotechno.us">robotics</a> research institute/incubator. It is free for commercial and research use under a BSD license. The library runs primarily on Linux but is intended to be cross-platform for Mac OS X and Windows. ROS provides standard operating system services such as hardware abstraction, low-level device control, implementation of commonly-used functionality, message-passing between processes, and package management. It is a graph based architecture where processing takes place in nodes that may receive, post and multiplex sensor, control, state, planning, actuator and other messages.</p>
<p><span id="more-309"></span>ROS has two basic &#8220;sides&#8221;: The operating system side ros as described above and ros-pkg, a whole series of user contributed nodes that implement functionality such as Simultaneous localization and mapping, planning, perception, simulation etc.</p>
<p>ROS is released under the terms of the BSD license, and is open source software.</p>
<h3>Applications</h3>
<ul>
<li>ROS areas include</li>
<li>A master coordination node</li>
<li>Publishing or Subscribing to data streams (images, stereo, laser, control, actuator, contact &#8230;)</li>
<li>Multiplexing information</li>
<li>Node creation and destruction</li>
<li>Nodes are seamlessly distributed, allowing distributed operation over multi-core, multi-processor, GPU and clusters.</li>
<li>Logging</li>
<li>Parameter server</li>
<li>Test systems</li>
</ul>
<p>ROS Package application areas will include</p>
<ul>
<li>Perception</li>
<li>Object Identification</li>
<li>Segmentation and Recognition</li>
<li>Face Recognition</li>
<li>Gesture Recognition</li>
<li><a href="http://robotechno.us/search/motion+tracking">Motion Tracking</a></li>
<li>Ego-motion</li>
<li>Motion Understanding</li>
<li>Structure from motion (SFM)</li>
<li>Stereopsis Stereo vision: depth perception from 2 cameras</li>
</ul>
<p>Web site community for open source robot operating system is www.ros.org. If you wish to find out about Willow Garage&#8217;s role in developing ROS, please visit the <a target="_blank" href="http://www.willowgarage.com/pages/software/ros-platform">Willow Garage Web site</a>.</p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/personal-robot-2-pr-2-project-costing-4-million.html" rel="bookmark">Personal Robot 2 (PR 2) Project, Costing U.S. $ 4 Million</a> <br />A company called Willow Garage in Menlo Park, California, United States make robots capable of working on assignment to read a map, identify and retrieve objects, open doors, folding towels and other household chores. Not a bit of funds spent on these sophisticated machines, which reached U.S. $ 4 million ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/personal-robot-to-open-the-doors.html" rel="bookmark">Personal robot to open the doors</a> <br />Hello all, I just read a news today about robot which have ability to open the door on the way. Intel Microprocessor used to be robot's "brain", laser scanner and video camera are used to be the robot's "eyes". I think it is good achivement in robotics. How about you..? ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/explanation-arduino.html" rel="bookmark">Few explanation about the Arduino</a> <br />What is Arduino? Arduino is a tool for making computers that can sense and control the physical world through your computer. It is a development platform open-source physical computing, based on a simple microcontroller board and a development environment for creating software (programs) for the board. Arduino can use to ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/latest-robotics-release-by-microsoft.html" rel="bookmark">Latest robotics release by Microsoft</a> <br />Microsoft released the latest version of its robot-building platform for professionals and hobbyists of the Lego Mindstorms AlphaRex level. This robotics news come from cnet.com, said about Microsoft's latest robotics release... here the news: Microsoft released the latest revision of its robotics development software platform at the RoboDevelopment Conference and ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/lecture-1-introduction-to-robotics.html" rel="bookmark">Lecture 1 | Introduction to Robotics</a> <br />Lecture by Professor Oussama Khatib for Introduction to Robotics (CS223A) in the Stanford Computer Science Department. In the first lecture of the quarter, Professor Khatib provides an overview of the course. CS223A is an introduction to robotics which covers topics such as Spatial Descriptions, Forward Kinematics, Inverse Kinematics, Jacobians, Dynamics, ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/robot-operating-system-ros.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Build a Robot in 2 Hours</title>
		<link>http://robotechno.us/build-a-robot-in-2-hours.html</link>
		<comments>http://robotechno.us/build-a-robot-in-2-hours.html#comments</comments>
		<pubDate>Thu, 06 Nov 2008 04:23:20 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Mechanics]]></category>
		<category><![CDATA[Microcontroller]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Robotics Tutorial]]></category>
		<category><![CDATA[Sensors]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[build a robot]]></category>
		<category><![CDATA[pic16f877a projects]]></category>
		<category><![CDATA[robot tutorial]]></category>

		<guid isPermaLink="false">http://robotechno.us/?p=142</guid>
		<description><![CDATA[Build a robot is not difficult as you think&#8230; With no experience in electronics, you can make a robot easily in 2 hours Ho it can be..? There are many robot tutorial has been written and published through blog or web. I found interesting robot tutorial from this web. The author said that he build [...]]]></description>
			<content:encoded><![CDATA[<p><a target="_blank" title="Easy Image Hosting" href="http://images.myfilehost.us/viewer.php?id=cqs1225944615f.jpg"><img class="aligncenter" src="http://images.myfilehost.us/images/cqs1225944615f.jpg" border="0" alt="cqs1225944615f Build a Robot in 2 Hours" width="232" height="173" title="Build a Robot in 2 Hours" /></a><br />
<strong><a target="_blank" title="robot tutorial" href="http://robotics.penyet.net/category/robot-tutorial">Build a robot</a></strong> is not difficult as you think&#8230; With no experience in<strong> <a target="_blank" title="electronics" href="http://electropart.info">electronics</a></strong>, you can make a robot easily in 2 hours <img src='http://robotechno.us/wp-includes/images/smilies/icon_smile.gif' alt="icon smile Build a Robot in 2 Hours" class='wp-smiley' title="Build a Robot in 2 Hours" /> </p>
<p>Ho it can be..?<br />
<span id="more-142"></span>There are many<a target="_blank" title="robotics tutorial" href="http://robotechno.us/category/robotics-tutorial"> <strong>robot tutorial</strong></a> has been written and published through blog or web. I found interesting robot <strong><a href="http://letsmakerobots.com/start">tutorial from this web</a></strong>.  The author said that he build the robot just in 2 hours, you also can see the video there&#8230; just visit the web&#8230;</p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/lancer-robotics-video-blog-1.html" rel="bookmark">Lancer Robotics &#8211; Video Blog 1</a> <br />Us Working for 13 straight hours on October 23rd, 2011.</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/parallax-boe-bot-robot-kit-serial-version.html" rel="bookmark">Parallax Boe-Bot Robot Kit (Serial Version)</a> <br />Build and program a high-quality, complex robot with a BASIC Stamp 2 microcontroller runnig on a Board of Education project platform. With the Boe-Bot Robot kit you can do over 40 hands-on activities! Program your Boe-Bot Robot to navigate on its own with touch, light and infrared sensors. Easy to ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/robot-step-step-robot-tutorial.html" rel="bookmark">Make a Robot : A Step by Step Robot Tutorial</a> <br />This tutorial will show you how to make a robot easily. It's very simple tutorial and of course it will be a low cost robot. You will get the knowledge about basic and simple mechanic design, simple robot schematic diagram, line following sensor, programming and more... This is a very ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/build-simple-robotic-arm.html" rel="bookmark">Build a Simple Robotic Arm</a> <br />This is a tutorial document about how to build an easy, cheap and simple robotic arm. The above robotic arm is really a lot of enjoyable to build and apply. It applies a first and 3rd class lever, and includes a fun linkage for the grabber. It can grab, pick ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/pic16f877a-tutorial.html" rel="bookmark">PIC16F877A Tutorial</a> <br />This PIC16F877A tutorial document was written Lukas Hoffmann. This tutorial containing the explanation about microcontroller PIC16F877A and the sample code using C/C++ programming language. There are some simple interesting project in this tutorial such as how to make blinking LED, how to display message on computer screen, how to drive ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/build-a-robot-in-2-hours.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Line Follower Robot Tutorial</title>
		<link>http://robotechno.us/line-follower-robot-tutorial.html</link>
		<comments>http://robotechno.us/line-follower-robot-tutorial.html#comments</comments>
		<pubDate>Thu, 20 Mar 2008 00:16:55 +0000</pubDate>
		<dc:creator>Robot Technology</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Mechanics]]></category>
		<category><![CDATA[Microcontroller]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Robotics Tutorial]]></category>
		<category><![CDATA[Sensors]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Circuit diagram of line follower robot]]></category>
		<category><![CDATA[line follower]]></category>
		<category><![CDATA[line follower robot circuit]]></category>
		<category><![CDATA[line follower robot circuit diagram]]></category>
		<category><![CDATA[line follower robot project]]></category>
		<category><![CDATA[line follower robot tutorial]]></category>
		<category><![CDATA[line follower tutorial]]></category>
		<category><![CDATA[line following robot circuit]]></category>
		<category><![CDATA[line tracer tutorial]]></category>
		<category><![CDATA[line tracking]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[robotics]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://robotechno.us/index.php/robotics-tutorial/line-follower-robot-tutorial/</guid>
		<description><![CDATA[Line Follower ROBOT Plermjai Inchuay, plermjai@loxinfo.co.th Award winner from VingPeaw Competition 2543, the robot built with 2051, L293D, and four IR sensors. Simple circuit and platform, quick tracking and easy-understand program using C language. I designed my robot, which use two motors control rear wheels and the single front wheel is free. It has 4-infrared [...]]]></description>
			<content:encoded><![CDATA[<p align="center"><strong>Line Follower ROBOT</strong></p>
<p align="center">Plermjai Inchuay, plermjai@loxinfo.co.th</p>
<p>Award winner from VingPeaw Competition 2543, the robot built with 2051, L293D, and four IR sensors. Simple circuit and platform, quick tracking and easy-understand program using C language.</p>
<p style="text-align: center;"><a target="_blank" title="Line Follower Robot design" rel="external nofollow" href="http://schematics.circuitdiagram.net/viewer.php?id=bwy1248922513o.jpg"><img class="aligncenter" src="http://schematics.circuitdiagram.net/thumbs/bwy1248922513o.jpg" border="0" alt="bwy1248922513o Line Follower Robot Tutorial"  title="Line Follower Robot Tutorial" /></a></p>
<p>I designed my <a title="robotics tutorial" href="http://robotechno.us">robot</a>, which use two motors control  rear wheels and the single front wheel is free. It has 4-infrared sensors on the bottom for detect black tracking tape, when the sensors detected black color, output of  comparator, LM324 is low logic and the other the output is high. Microcontroller AT89C2051 and <a title="informatipn about hbridge driver" href="http://robotechno.us/search/hbridge+driver">H-Bridge driver</a> L293D were used  to control direction and speed of motor.</p>
<p style="text-align: center"><a target="_blank" title="line follower robot circuit" rel="external nofollow" href="http://schematics.circuitdiagram.net/viewer.php?id=jdv1248922322y.gif"><img src="http://schematics.circuitdiagram.net/thumbs/jdv1248922322y.gif" border="0" alt="jdv1248922322y Line Follower Robot Tutorial"  title="Line Follower Robot Tutorial" /></a></p>
<p><span id="more-37"></span></p>
<p align="center"><em>Fig 1. Circuit diagram of my Robot.</em></p>
<p style="text-align: center;"><a target="_blank" title="line detector circuit" rel="external nofollow" href="http://schematics.circuitdiagram.net/viewer.php?id=bfi1248922584n.gif"><img class="aligncenter" src="http://schematics.circuitdiagram.net/thumbs/bfi1248922584n.gif" border="0" alt="bfi1248922584n Line Follower Robot Tutorial"  title="Line Follower Robot Tutorial" /></a><br />
<em> Fig 2. <a target="_blank" title="circuit diagram" href="http://circuitdiagram.net">Circuit diagram</a> of <a title="information about infrared sensor" href="http://robotechno.us/search/infrared+sensor">Infrared sensors</a> and comparators.</em></p>
<p style="text-align: center;"><a target="_blank" title="line follower sensor" href="http://schematics.circuitdiagram.net/viewer.php?id=viu1248922677p.gif"><img class="aligncenter" src="http://schematics.circuitdiagram.net/thumbs/viu1248922677p.gif" border="0" alt="viu1248922677p Line Follower Robot Tutorial"  title="Line Follower Robot Tutorial" /></a><br />
<em> Fig 4. Position of sensors,  left hand side is side view and right hand side is top view.</em></p>
<p><strong>Software</strong><br />
Software for write to AT89C2051 is <a href="http://robotechno.us/ddl/robot1.hex">robot1.hex</a> ,which was written by C-language ,the  source code is<strong> <a href="http://robotechno.us/ddl/robot1.c">robot1.c</a></strong> compiled by using MC51 in TINY model with my start up code<strong> <a href="http://robotechno.us/ddl/robot.asm">robot.asm</a></strong> .MPEG files</p>
<p>Sample of competition between 2051 and 68HC11.</p>
<ul>
<li><a href="http://robotechno.us/ddl/movie1.mpg">movie1.mpg</a> (1,303kB)</li>
<li><a href="http://robotechno.us/ddl/movie2.mpg">movie2.mpg</a> (373kB)</li>
</ul>
<p>Source: <a target="_blank" href="http://www.kmitl.ac.th/~kswichit%20/LFrobot/LFrobot.htm">www.kmitl.ac.th</a></p>
<div id="seo_alrp_related"><div class="seo_alrp_rl_content"><a href="http://robotechno.us/super-tiny-line-follower-robot.html" rel="bookmark">Super Tiny Line Follower Robot</a> <br />Original post, visit this site: elm-chan.org Before read the rest article/tutorial, please watch the video first.. :). See the robot's movement and i't speed. This is very great...! You may see the video here. This line follower robot is very small and simple. This robot is running fast and follow ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/c-52evb-robot-controller.html" rel="bookmark">C-52EVB Robot Controller</a> <br />C-52 EVB is simple robot experiment. Just need to build a 2 wheels robot with L293D H-Bridge driver and IR sensors. Write down your program with c language. Introduction One of my student has made a disgraceful robot that used two stepper motors and with a simple IR sensor. Yes, ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/line-follower-robot-tutorial-atmega8535.html" rel="bookmark">Line Follower Robot Tutorial (ATMega8535)</a> <br />Build your own line follower / line tracker robotâ€¦! Microcontroller : Atmel ATMega8535 Sensor: 6 photodioda sensor Motor driver : L298 dual driver (up to 1A of electric current) Download the full tutorial include schematic diagram and program code ( C language ): Download link</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/line-follower-tutorial-based-atmega16-l298-motor-driver.html" rel="bookmark">Line Follower Tutorial based on ATMega16 + L298 Motor Driver</a> <br />Here the another Line Follower robot tutorial... The diagram is quite simple and easy to build, easy to understand. The robot mechanical design not included, you may create the shape and the mechanical design of your line follower robot by your self. Just use motor gear box which have high ...</div><br /><div class="seo_alrp_rl_content"><a href="http://robotechno.us/avr-line-following-robot-tutorial.html" rel="bookmark">AVR Line Following Robot Tutorial</a> <br />Block Diagram The robot uses IR sensors to sense the line, an array of 8 IR LEDs&lt; (Tx) and sensors (Rx), facing the ground has been used in this setup. The output of the sensors is an analog signal which depends on the amount of light reflected back, this analog ...</div><br /></div>]]></content:encoded>
			<wfw:commentRss>http://robotechno.us/line-follower-robot-tutorial.html/feed</wfw:commentRss>
		<slash:comments>79</slash:comments>
<enclosure url="http://robotechno.us/ddl/movie1.mpg" length="1334436" type="video/mpeg" />
		</item>
	</channel>
</rss>

