|
Orion Logo Logo © OrionRobots 2004 Search Online users
26
online users
|
Blog: Danny Staple
Description: Thoughts, news, events, creations and insights about Lego, Robotics and technology from the creator of OrionRobots.
Created by orion on Sun 05 of Dec, 2004[11:42 UTC] Last modified Mon 14 of Jul, 2008[22:24 UTC]
(171 posts | 141702 visits | Activity=2.00)
Chloe and Shannon Hall
I spent some time chatting with the two sisters. Their father, Derek Hall, entered the robots that took first and second prizes in the non contact maze solving event, and has been a MicroMouse? champion for 4 years running, so it kind of runs in the family. It all starts there, and Prof. Martin Smith even remembers Chloe being hauled along to MicroMouse? events when still in the pushchair. Their RobotsShannon built the robot Cheese Detective - a robot based on simple electronics and uses a part of a CD, Snoopy is similar in that it is also based on simple electronics and uses a CD for a sensor. However, it does have differences. Snoopy is smaller and lighter for a start, and the CD is at the bottom of the bot instead of the top-heavy cheese detective. Snoopy is not without its problems, and during the drag race it demonstrated it needed a new gearbox due to pulling to the side a lot while running the race. Snoopy was also once the "Easter Chicken Bot", and had a small chicken mascot stuck to it, although that fell off. I did point out (in jest) that perhaps "Woodstock" would have been a more apt title. Chloe’s first robot was Slowpoke, and later "Not-So-Slowpoke", an all mechanical robot, that (according to Chloe) would simply drop out of the end of mazes when done. More about ChloeChloe enjoys building robots from junk, and uses materials like broken CD/DVDs (as mentioned above), credit cards and other stuff. As you may know, we really like robots built from junk on OrionRobots. She also likes to decorate her robots, an area that was mostly lacking in many MicroMouse? robots. Although we like to see the guts of a robot, a little bit of presentation and not taking it too seriously also help.Chloe is now 15, and is just getting on with her GCSE’s at the Stanway School, Colchester. There is a robotics club, and she is trying to start a separate MicroMouse? robots club at the school too. She has been able to use a well kitted out DT lab at school with plastic moulding, laser cutters as well as simpler hand tools, and also borrow tools or materials from her Dad’s robot building kit, although that is going to be on the terms that she uses it safely, looks after it and returns them I suspect. Both Chloe and Shannon were pretty interesting to chat with, and clearly knew their stuff. They both also conveyed the message that it would be good to see more girls in the show, and even more contenders in their age group who are not school affiliated. If you are able to build robots, now is a good time to start reading up about MicroMouse? and preparing your maze running robots for the next event. Challenge to any takersDo you think you have what it takes to beat these two youngsters? Who took first and second prize in their competition?Links
UK Micromouse 2008
I recently attended the Micromouse 2008 event at Millenium Point in Birmingham, so I could watch superb robots try their luck in the maze, and meet a number of other seasoned and not so seasoned robot builders.
About MicromouseMicromouse robots are REAL robots. They are not remote controlled, and must come with all their own control circuitry, at least those beyond a certain cheeky number (well letter actually).Micromouse has been running for a very long time, since around 1979, when the Amazing Micromouse Maze Contest was held. I last attended one when it was held during a Tomorrows World Megalab event in the NEC in Birmingham. Micromouse is held once a year, although other similar events are held throughout the year. If you enjoy building robots, or simply want to meet with other robot builders, this event is highly recommended. It is even better if you turn up with a robot to try in the games, although I did not this time. You will be able to exchange tips and techniques as well as being able to test the robot in a pretty serious event. The current eventUK Micromouse 2008 was hosted by Birmingham City University and ThinkTank?, an interactive science museum with a regular robot club, and Lego robolab events.The maze itself was based on a large board with holes for pegs, and a system of pegs and walls used to construct the mazes. There was more than one maze - a maze designed for non-contact maze solvers, and a smaller, simpler maze for the contact followers. Because this is a gathering of robot builders, a number of other competitions and side events, such as line following, drag races, walking robots, robot soccer, mini-sumo, walking robots and just general showcasing of robots gear take place too. There was also plenty of kit (ie oscilloscopes, soldering gear, multimeters, logic testers) for testing and debugging robots. The mazes used a timing system that is based on infrared sensors to detect when the mouse has left the starting square, and when it has entered the goal area. This could be armed with a control board, and the numbers fed into a database system so they could be used to create scoreboards later. The system worked fairly well, although there were a few issues, and the automatic sensor triggers had to be turned off for a particular group of robots based on the same kit. Among the most well known there is probably Professor Martin Smith, known for being a judge on robot wars and having built robots himself too. He lead the proceedings as the Master of ceremonies, gave commentary to the finals and was also quite good just to chat with - a very down to earth guy. Also present was Chris Hills of PheadruS SystemS Ltd who normally works with real time embedded operating systems for control engineering applications, although at the event they were also flogging off a bunch of development boards at £15 or less. The chap also writes for Embedded Systems Engineering. He donated the development boards and kits that were awarded as prizes. I will be following this up with a number of posts based on interviews, and less formal chats I had with some of the characters that attend this event, so read on for more! I have also posted a photo gallery at The OrionRobots Micromouse 2008 photo Gallery. While I work on repairing the photo gallery comment system, please leave any comments intended for the gallery on this post. Links
Power and data transmission
As I have been looking at wiring up my flat, I have been thinking of ways to conserve power and space - cable space that is. There is nothing I am more interested in right now than ways to banish "wall warts" - the many, many small 12v DC adaptors. Nearly every device has one, my phone (for its answering machine), the NAS, monitor, printer, microcontroller programmers, guitar effects unit. The list actually goes on and on.
Even the PC has its switched power supply eventually supplying DC to most of the components. Why am I having to convert to DC over and over? So I started looking at alternatives. Could one decent switched power supply sort this out? I am aware of the issues. First - each of those power supplies has different voltage and wattage outputs for device requirements. Devices must not be overloaded, or underpowered .Also, any solution must not load up one mains plug over its own rating. cables for power delivery must be safe and have the correct wire pitch and insulation. It needs to be able to safely deal with surges, and for my requirements work out as a relatively inexpensive product. The system needs to be in the market presently, or shortly available (in the next 6 months). It should also, preferably link up with the data solution, as a number of devices also have a data line to go with them, although the data requirement is not really essential. I have come across a few potential ideas for this, some are products on the market, some are things I could homebrew. That is an interesting trade off, as while I like doing homebrew, this is electrical power, and although the voltages are low, a semi-permanent installation like this needs to be bulletproof. Also, it needs to be fairly readily expandable, and an off-the-shelf solution is going to be somewhat easier. That then throws up one last problem, is that the availability needs to be good. I do not want to invest in a system that will disappear in a couple of years, that was created by one obscure group or company - the system needs to be pretty standard, and the standards well documented. Preferably not too heavily patent encumbered. Tricky customer aren't I? Possible SolutionsWiring a 12 volt rail through the houseAn old friend lives in a house out in the moors, where he generates his own power through both a diesel generator and a wind turbine. The house came with very old wiring, nto really suitable for safe use at 240 volts. He hired an electrician to wire the 240 volts, and converted the old wiring into a 12 volt DC system.
In conclusion, while it suits him well, it is probably not appropriate for myself. GreenplugGreenplug are a company producing a single power unit to replace many power units. They are also courting consumer electronics manufacturers to try and get them to ship Greenplug cables instead of wall warts.
This is a possible solution, although I would have to wait a while for it to become available. PoweredUSBThis is a standard created by a consortium of companies, designed for use in the EPOS (Electronic point of sale) realm for retail groups.
In conclusion this is not really a player. The expense, encumbrance, the lack of standardisation for end points and distance from consumer devices is a bit of a put off. For now, this is not an option. PoE and 802.3afThis first sounded like a bit of a joke, an April fools. But it turns out this is a real and readily available way to send both power and data over a single cable. It is also a standard, implementable by many.
This is probably the most appealing solution yet. There are even whole thin-client terminals based on PoE. Readers Call to actionI am relatively sure that I have only covered a very small portion of the possible ways to do this, and there are more to consider.So do you know any systems? Could you advise me, or tell me your experiences with these devices? Maybe you are a company with products like this trying to make yourself known - in which case you are free to leave a comment on this article with a link back to your site. Links
Using Telnet on the DLink DSM-G600
In my last post, I explained how to get a telnet service installed on the box, but I did not really say what it really was or how to use it. In this post I will explain a little more about how it works and what it is for.
Telnet is a little like a telephone service: Like the telephone, it allows a caller (client) to place a call (connection) with a receiver (service). It allows a text based dialog with something at the other end. This however simply provides, like a phone line, a pipe to facilitate communication. To make it useful, it needs to have something to transmit to and from. In the case of a phone line, you have a caller and receiver: By the way, the reason the phone line analogy works pretty well is that in computer networks, some links are likely to actually be phone lines. These worlds are actually fairly close. Replacing a caller with a computer user, and the receiver with an application the user wants to interact with at the other end gives a full picture: Both the application and Telnet service are likely to be running on the same remote machine, in this case the DSM-G600. It is now clear that once the protocol is understood, any authentication has taken place and the connection is established, the telnet service layer should become transparent: Still with me? On the DSM-G600, I placed the Busybox application which provides a collection of services. Among them is a shell - Ash. This shell is similar to an MS DOS command line and allows you to query the system and run other programs. How to connect?So in the last post, I set up the services. I still need a telnet client. The best (in my humble opinion) telnet client for windows is Putty. It is free and easy to set up. The link is at the end of this post.Like a phone number, you will need the address of the G600 - mine is at 192.168.1.7. Putty also allows a choice of protocols, so at this point I ensure I pick telnet. After clicking ok, if all goes well, the Telnet services will respond with a login prompt: Use "root" for the user, and the admin password you set up on the DSM-G600. You should now be interacting with the Ash shell and it will prompt you: Ash, as mentioned, allows you to run programs and examine the system. To prove this works, I run the "ls" program which will list the contents of the current directory on the box. It is a little like "dir" in DOS. SummarySo now you know what telnet is, how to get the service running on the DSM-G600, how to connect to it and how to start interacting with it via the Ash shell.Links
DLink DSM-G600 next steps
Simple fun_plug testSo continuing my work with this box, since it was hackable, I decided the first thing to do was to try a simple test of the fun_plug system mentioned before.I created a very, very simple script: #!/bin/sh echo Testing >/mnt/HD_a2/fun_plug_active.log The script is simple enough. The first line tells the system that this file is to be run as a shell with the interpreter at /bin/sh. The next line simply puts the text "Testing" into the file /mnt/HD_a2/fun_plug_active.log. I uploaded it to the box as /HD_a2/fun_plug using FTP, and then set permissions on that to 777, making the file executable. Rebooting the box should leave a new file on the drive at /mnt/HD_a2/fun_plug_active.log containing the word "Testing". Getting a move onNow I was truly cooking. The modding community around this box had figured out cross compiling to this box, and so created a number of binaries (compiled programs) for it already. The first to get was a telnet client, so I could actually interact with the system without waiting for fun_plug to run on a reboot.I already have a Linux box as well as Cygwin (a way to run some linux based operations in windows) on a windows box. You still require windows to interact with the web front end on the box, which only works properly in Internet Explorer. Understanding BusyboxThe recommended (by the community) way to get telnet on this box is to use a busybox binary with additional telnet and sed components. Busybox, which I briefly mentioned in my previous post, is a modular system offering many common Linux commands and utilities in a small binary. It is designed to stay resident, have no (or few) external library dependencies, and be very small. All of the commands then run from this binary. It is perfect for use on embedded devices like this.Busybox has an interesting way to identify which module is being called. You can run busybox directly, with the required command as a first parameter. However, the recommended way is to use a symbolic link (a file that links to the content of another file) which has the required modules name - this then conveniently means pointing the path at a directory of these symlinks allows them to be run as if they were all individual binary commands. Busybox commands are largely compatible with normal Linux equivalents, but are understandably lighter, so some less used or inappropriate (very intensive) options will be stripped away. The box already has a busybox binary of its own, but that is somewhat limited. I grabbed the binary from http://download.dsmg600.info/busybox-telnetd-1.2.1.tar.bz2 You should now end up with a couple of files - busybox, sed and a readme.txt. The readme.txt is very handy, it actually contains information on getting telnet running with this set. I copied over the binaries to the root of the disk on the box, and placed the commands mentioned in the readme into the fun_plug script. About TelnetTelnet allows remote access to a box via a command line, it is a simple and lightweight protocol and has been around for many, many years. However, on this box, it requires a few changes to groups, users and security in the configuration. The box uses a standard Linux configuration, in that it stores users and groups in files in the /etc directory as plain text files. However, these files are stored in a compressed image in the flash, and then expanded to a ramdisk on boot. Therefore, we must use fun_plug to make the changes on boot, before the telnet service is started. Sed is a tool designed to modify text files. It means "stream editor" where the input text is considered a simple stream of text coming at the processor. It has a fairly esoteric and complex syntax based on regular expressions - and I generally have to regularly refer to a regular expression cheat sheet. Regular expressions are a shorthand way to denote changes to text, operations like search and replace. Luckily, I did not have to think too much about the sed scripts, as the G600 community had already come up with them. However, I will explain them. #!/bin/sh if [ ! -e /mnt/HD_a2/ash ] then ln -s /mnt/HD_a2/busybox /mnt/HD_a2/ash fi if [ ! `grep root /etc/shadow` ] then echo kontroll.`grep admin /etc/shadow` >> /etc/shadow /mnt/HD_a2/sed -i -e 's/kontroll.admin/root/' /etc/shadow fi /mnt/HD_a2/sed -i -e 's/root:.*/root:x:0:0:Linux User,,,:\/:\/mnt\/HD_a2\/ash/' /etc/passwd cd /dev && /mnt/HD_a2/busybox makedevs ptyp c 2 0 0 9 cd /dev && /mnt/HD_a2/busybox makedevs ttyp c 3 0 0 9 /mnt/HD_a2/busybox telnetd & The first line, as above, expresses that this script should be run by /bin/bash. The next line checks for the existence of the file /mnt/HD_a2/ash. Ash is another shell interpreter, somewhat more friendly than raw sh. It is what a user will get when the telnet in. If it does not exist (the "!" is a negative test), then "ln -s" is used to create one of the symlinks I discussed above. This symlink to busybox will run the module ash in busybox. "fi" simply ends an if statement. The existence of a "root" user in the file /etc/shadow is tested for - grep is a tool to find regular expressions in files, and /etc/shadow is one of the user configuration files under /etc which contains users adn encrypted passwords. This negative test leads to the use of echo to append the admin users details to the end of the file again. The word "kontroll." is used as a placeholder, so the next operation which uses Sed to switch kontroll.admin for root gives us a standard root user. Sed is then used to set up a default shell (the ash shell) so the user can log on. If at this point you want to add another user (beyond root) and allow them to logon, you should create a user from the front interface, and then add an entry to set a shell for them. I added myself, as I do not always want to be root. Next, a telnet session needs a terminal device to attach itself to. A command makedev (in busybox) is used to create those devices. Finally, the telnet service is started. After the box is rebooted, I was able to log in with telnet. This now means I can start to do a lot more to manipulate the box. My plans included getting an SVN server running on the box, with trac - although apache is too heavy, their may be another way to do that. The community website mentions getting Debian and Gentoo environments running on this box. Links
New Toy - DLink DSM-G600 NAS Box
I recently bought the DSM-G600 on Amazon, a small and inexpensive Wireless Enabled NAS - Network Attached Storage. It is a tiny box - about the size of router, maybe a little taller. It has a wireless aerial at the back, a set of lights on the front, an Ethernet port, power socket and a cavity for an IDE hard drive inside it. The box also has one USB2 port which can play as a USB2 host. That already gave me ideas - I know it can support USB2 drives, but how about a DVD Burner for backups directly from the NAS, or connecting my printer to it? Well early days yet...
This is where it starts to get fun. I bought a 250Gb hard drive for the cavity and let the drive start up and initialise the drive. Immediately it grabs an IP address via DHCP my local network and starts whirring away. The manual gives details on finding an initialising it for my network so I can give it a permanent address. Initially the box shares the drive as a windows share, and has a web interface to edit the settings, although this interface has a couple or quirks that mean it only works in Internet Explorer. The interface allows me to set up users and access restrictions, enable FTP access and other small operations as well as monitoring the health and temperature of the drive. HackableHowever, I bought this device for more than just storing files. This box has a hacking community around it, and under the hood it is simply a Linux kernel running the busybox set of tools built with uclibc on flash storage. The drive is actually partitioned into one great big Ext2 Linux partition. Don't worry if that does not yet mean a lot to you - what it simply means is that this box is hackable, and could possibly be used for an SBC - Single Board Computer.The hardware consists of a 170Mhz PowerPC based processor, 32MB of RAM and 4MB of Flash ROM. This may sound limited, but it is a tiny cheap box, and now probably has a huge hard drive attached to it! It may be perfect for a tiny home server sitting in the corner. The drive as its shared can have a single file placed on it named "fun_plug". This harmless seeming name allows you to do something quite interesting - it is a shell script, running in a busybox equivalent of a Bourne Unix shell. You can run commands from this script. It runs every time the box is restarted. The next step is to get some of my own tools on the box so I can run those. I have had it long enough to have done plenty with the box, and will be blogging my hacks so far with it here. I will give you the links to start you off though.. Links
Get Your Hands On a Vexplorer kit with Robot Design and Building Contest!
Botmag are currently hosting a contest to design and later build innovative robots using the Vexplorer kit. The builders need to get a description of a unique or creative use for the VEXplorer kit entered into the contest before the 24th march 2008.
25 of those builders will be selected to receive a free VEXplorer kit to build their designs. They then need to make a YouTube video of their robot in action showing the innovative behaviour. The contest winner will get a grand prize of a $5000 scholarship. The contest will be judged by none other than Grant Imahara?, a special effects wizard probably best known for R2D2 and being one of the hosts of Mythbusters. The winners will be personally picked by him on the 5th June 2008. He will be looking for innovation, creativity, and there will also points awarded for the use of the SolidWorks Student Design Kit to design the robot. The competition is put together by a group including Innovation First, Inc., Revell, Robot magazine and SolidWorks Corporation. I personally would have entered jsut to get my hands on the free VEXplorer kit. The contest is sadly only open to US residents who are 14 or older. Those under 14 may be able to get a parent to represent them. Links
Superb Robotics Website
I have now found another good resource with plenty of information on robotics and building robots. The content on the site is largely original, and the site has a visitor contribution area as well as a number of forums. It is also relatively recent.
The articles are very instructional with plenty of diagrams and the site is very easy to navigate. There are detailed circuit diagrams, sections of code (programs) and discussion on the topics. So I present to you ikalogic - http://www.ikalogic.com
Role models and influences
For any person, their idols, role models and influences can totally shape their dreams, the way the behave, their ambitions, and how the aspire to reach them. People have asked a number of times who I am influenced by and why.
I don't go for glitz and glamour, but for real achievers that one way or another have made real differences, often in technology and science, and often being unrecognised while doing so. They all have real human failings, and some have sides that I feel less inclined to like, but still admire them for their achievements. So who are they?Albert Einstein - Top of my list comes this amazing man. He has single handedly done so much for modern physics. He spent a reasonable amount of his life unrecognised, and sadly saw his equations used to create atomic weapons. However, for understanding fundamentals of light, energy and particle physics, he has done much. Alan Turing - Like a number of these great people, society did not accept his choices and drove him to a sad demise. It must be acknowledged that without this man, modern computing and programming systems would not be what they are. Again, he had some very human failings and I am aware that his theories were developed in War Time for intercepting and decrypting messages. Nikola Tesla - Nikola Tesla remained largely unrecognised throughout his life, but modern electromagnetic machines, including simple AC power transmission, the electrical transformer, generator and motor systems, induction based power systems, robotics and a great deal more are due to his work in this field. There are quite possibly plenty of discoveries he made that the rest of the world are yet to discover and understand. He died with no money and commonly regarded as a mad scientist. Charles Babbage - The machines designed by Charles Babbage are fairly well known as concepts for large mechanical computing machines, the most well known being the difference engine. A working machine has been constructed and is now on display in the Science Museum in London. These are but a few, but a very important few, of my influences. There are many other names I should mention in brief which include inventors, entrepreneurs and writers - Galileo, Copernicus, Pythagorus, Tim Berners-Lee?, Leonardo Da Vinci, Linux Torvalds, Mark Shuttleworth, Steven Hawkings, Richard Dawkins, Douglas Adams, Isaac Asimov and Terry Pratchett. Of course, not all the people I consider role models are famous. Other people I consider great role models are my father who is also a software engineer, and some very good friends of mine who exceptional people as well as exceptional technologists. I hope that some people may read this, follow up a little on the people mentioned here, and maybe be inspired themselves to do similar great things. Links
Magneticly Linking Robots
Among the things mentioned occasionally on OrionRobots are Swarm Bots?, Nano Bots and Cluster Bots.
One cool idea among these is that the robots can join together in some movable arrangement to perform tasks - to cluster together. Of course, while taking into account lessons from SciFi (like The Replicators who do just this), they could be very handy for all kinds of things, including rapid prototyping, bridge forming, creating robotic manipulators and other stuff. Now having real ones on Nano Scale is still quite a distance away, however, a team at Carnegie Mellon University led by Seth Goldstein have come up with some demonstration robots which use a ring of electromagnets around their perimeter to bind and move around each other. The goal is to create the microscopic swarming robots eventually, and small electrical charges instead of magnets are likely to be more efficient at that scale. These demonstrations of robots has been dubbed "claytronic". NewScientist? created a video of this demo in action. Links
|
Login You will need to login or register to comment or post unqueued messages to the forums. Current Poll
Are you interested in a London robot building Group?
|