Showing posts with label info. Show all posts
Showing posts with label info. Show all posts

Saturday, 2 July 2011

RF Transceivers


Hi!

Long time without news, I'm sorry!
But now i'm fully ready to begin the development of my swarm of iRobots!

Today I will talk about the cheap RF transceivers I found at sparkfun (http://www.sparkfun.com/products/9582).
They are FM transceiver with configurable frequency bandwitch, SPI interface, internal FIFO (very small, but very useful). Right now I'm programming the eLua software to test them:

Here I'm using the STM32 kit to talk with two RFM12 (one on each SPI port) they will simply echo each other as a test application.
I will create soon a GITHub Repo to share the code of this post and futures ones!


Tuesday, 14 December 2010

Paper Review season is open!

While I do not solve the commercial problems with iRobot I will start the reviews of my project bibliography, I'm using Mendeley to organize the papers into categories and to classify notes about each one.
Until now my list is:

1. Beni G. From swarm intelligence to swarm robotics Sahin E, Spears WM, eds. Ant Colony Optimization and Swarm Intelligence Proceedings. 2005;3342:1-9. Available at: http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=pubmed&cmd=Retrieve&dopt=AbstractPlus&list_uids=000228181500001.

2. Campo A, Nouyan S, Birattari M, Groß R, Dorigo M. Enhancing cooperative transport using negotiation of goal direction. Available at: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.146.300.

3. Cao YU, Fukunaga AS, Kahng AB. Cooperative Mobile Robotics: Antecedents and Directions. 1997;4:226-234. Available at: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.16.3358.

4. Ducatelle F, Di Caro A. G, Gambardella M. L. Cooperative Self-Organization in a Heterogeneous Swarm Robotic System. Available at: http://portal.acm.org/citation.cfm?id=1830501.

5. Ferrante E. A Control Architecture for a Heterogeneous Swarm of Robots: The Design of a Modular Behavior-based Architecture. 2009;(TR/IRIDIA/2009-010):77. Available at: http://iridia.ulb.ac.be/IridiaTrSeries/IridiaTr2009-010r001.pdf.

6. Garnier S, Gautrais J, Asadpour M, Jost C, Theraulaz G. Self-Organized Aggregation Triggers Collective Decision Making in a Group of Cockroach-Like Robots. Adaptive Behavior. 2009;17(2):109-133. Available at: http://adb.sagepub.com/cgi/content/abstract/17/2/109.

7. Holland O, Melhuish C. Stigmergy, Self-Organization, and Sorting in Collective Robotics. 2006. Available at: http://www.mitpressjournals.org/doi/abs/10.1162/106454699568737.

8. Kube CR. Collective Robotics: From Social Insects to Robots. Adaptive Behavior. 1993;2(2):189-218. Available at: http://adb.sagepub.com/cgi/content/abstract/2/2/189.

9. Kunz H, Hemelrijk CK, Intelligence A. Artificial Fish Schools: Collective Effects of School Size, Body Size, and Body Form. Available at: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.139.6329.

10. Magnenat S, Rétornaz P, Noris B, Mondada F. Scripting the swarm: event-based control of microcontroller-based robots. In: SIMPAR 2008 Workshop Proceedings.; 2008. Available at: http://monicareggiani.net/simpar2008/StandardPlatform/scpr2008-03-Magnenat.pdf.

11. Magnenat S, Member S, Bonani M, Longchamp V, Mondada F. 1 ASEBA: A Modular Architecture for Event-Based Control of Complex Robots. Available at: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.172.7935.

12. Mondada F, Bonani M, Magnenat S, Guignard A, Floreano D. Physical connections and cooperation in swarm robotics. Intelligent Autonomous Systems. 2004:53. Available at: http://books.google.com/books?hl=en&lr=&id=IKscPz-GaxAC&oi=fnd&pg=PA53&dq=Physical+connections+and+cooperation+in+swarm+robotics&ots=Asv3PFtmVg&sig=3sN6oMwiOjlowCvzvcmgZLSwkWE.

13. Nouyan S, Groß R, Dorigo M, et al. Group Transport along a Robot Chain in a Self-Organised Robot Colony. 2005:433-442. Available at: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.60.4512.

14. Reynolds CW. Flocks, Herds, and Schools: A Distributed Behavioral Model. 1987:25-34. Available at: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.48.7069.

15. Sahin E, Spears WM, Şahin E. Swarm Robotics. (Şahin E, Spears WM, eds.). Berlin, Heidelberg: Springer Berlin Heidelberg; 2005:10-20-20. Available at: http://www.springerlink.com/content/cc4k8mdhbhk0uw3y/.

16. Sharkey AJC. Swarm robotics and minimalism. Connection Science. 2007;19(3):245-260. Available at: http://www.informaworld.com/10.1080/09540090701584970.

17. Timmis J, Murray L, Neal M. A Neural-Endocrine Architecture for Foraging in Swarm Robotic Systems - Nature Inspired Cooperative Strategies for Optimization (NICSO 2010) - Studies in Computational Intelligence. Springer Berlin / Heidelberg; 2010:319-330-330. Available at: http://www.springerlink.com/content/u115n2635g1w9880/.

18. Şahin E, Winfield A. Special issue on swarm robotics. Swarm Intelligence. 2008;2(2-4):69-72. Available at: http://www.springerlink.com/index/10.1007/s11721-008-0020-6.

Wednesday, 1 December 2010

Hard to get iRobots

I've decided to use the iRobot Create on my project, even my advisor approved the platform, what is great!
But I simply can't buy them...
The Brazilian vendor ignore my e-mails and the international sales office automatically redirects my e-mails to the Brazilian office.

This situation is killing me.

Wednesday, 6 October 2010

The Big Fail

Ow no!

Miabots are out of stock and Merlin robotics ceased it production.
Now I'm out of robots, I will have to build my own swarm...
Wish me luck, I will need it!

Friday, 27 August 2010

MIT swarm of oil cleaners

Guys from the M.I.T. Senseable City Lab developed a swarm of oil cleaners based on solar energy. Very cool! (sorry the rush, I'm preparing the great news to put on the blog!)

Sunday, 13 June 2010

Presentation

Wow! Just finished my presentation for my project, I'll try to add it here to share.
Sadly it's in Portuguese by now:

Tuesday, 1 June 2010

Complexity

Sorry for the long delay on posting, I'm kinda busy right now with several parallel projects and demands reaching deadlines (I hate those)...
Well, I'm really into complexity lately, found a nice book about complex systems (complex in a "standard" way, not the "mathematical" way with complex variables) talks about complexity on various kinds of dynamical systems: from thermal to demographics and economics, going through statistical physics!
My interest on complex systems is how the simple elements are organized (or self-organize) to give birth to their complex behavior, or how to develop agents with simple behaviors capable of control (or simple interact on a controlled way) with those systems.

Also, found a nice animation about our future and trillions of computers that has a proto-idea of "layered complexity", not very deep on this subject but I liked it:

Wednesday, 12 May 2010

Termites as constructors, not destroyers

People tend to hate termites (I would hate to have my house eaten too!) but they show us one of the most beautiful examples of emergent behavior, collective work and decentralized task management: the termite nest.

built of mud, sand, shi... well, soil. they are tall pillars that rise from the ground, they have inside fungus gardens, deposit chambers and even a royal chamber to the queen. But the most impressive is the air recycling system! totally emergent from construction (or do you think there is a special "architect" type of termite?! Or more basic, if they even know why they build in this way!)

Here is a youtube Video from a documentary that shows one of those marvels of insect world:


Friday, 7 May 2010

Emergence


Emergence is a phenomenon that intrigues me... It's quite easy to understand:
From the simple individual behavior of agents, acting locally, a global new behavior emerge from the swarm (possibly with different properties and characteristics).

Consider an "Ant Bridge":


Each individual ant is acting based on some rule like:
"reach the edge, there hold the last one"

They really don't "know" they are making a bridge, they just do it.
Following this behavior they eventually reach the other side forming a bridge. So the bridge itself is an emergent sequel of a simple behavior that had nothing to do with bridges!

I consider those kind of solutions extremely beautiful, not only because it's generality, but because the fundamental behaviors are quite simple and the combination of locally aware agents following the same simple rule solve a much more complex problem.

Monday, 3 May 2010

A Candidate for Mechanical Platform

Browsing some stuff at online shops I stumbled with Merlin Robotics Miabot , It's not the ideal thing but it can be extended thanks to some IOs to it's control board.
It's a also a little expensive for what it is, but maybe it will worth. The other option is creating a robot from scratch, what is more fun but will take more time (a LOT more) ...
I'm very tempted to buy one of those just to check it out!



A lot of designs for the extension board to run eLua and give the self-charging abilities come to my mind...

Thursday, 8 April 2010

Eco-Tech, some say swarm is it's biggest triumph

Reading some tech news I've found an Autoworld entry about swarm technology.
It's kinda funny see that car industry is the most excited about swarm technology, but they have their point.

Tuesday, 30 March 2010

About eLua

Well, Here is a little about eLua.
The complete port of eLua to the MCU environment (32-bits, by now) made by Mr. Bogdan Marinescu and Dado Sutter, this last one a great friend of mine from PUC-Rio and something like a tutor on this software/hardware grounds where I stand today.

For those uninformed, Lua is an interpreted language (some call a script language or dynamic language) mainly developed by Prof. Roberto Ierusalimschy (hope I got his name right =] ) also from PUC-Rio. It is very simple, small but yet powerful...So why not to use all this power on my project!?
Here is a little transcription from eLua's official site that resumes everything:

eLua stands for Embedded Lua and the project aims to offer the full implementation of the Lua Programming Language to the embedded world.

eLua is not a stripped down set of Lua to fit in the embedded environment. Much on the contrary, it strives to offer the same features as the desktop version of Lua, complementing them with specific features for embedded use and discarting the need of an operating system running on the microcontrollers. Besides offering different flavors of the full Lua implementation (like the possibility of choosing between an integer-only and a floating point numbers implementation), a lot of work was and will be done in the direction of making Lua more "embedded-friendly" by augmenting the core language with features that allow lower memory requirements and faster embedded performance.

Why Lua? Extremely well crafted, Lua is the perfect example of a minimal, yet fully functional language. Although generally advertised as a "scripting language" (and used accordingly especially in the game industry), it is also fully capable of running stand-alone programs and web services (ex: Adobe Lightroom, World of Warcraft, ...). Its limited resource requirements make it suitable to a lot of microcontroller families. The intrinsic high portability of the original Lua code (which is ANSI C and runs virtually on every platform), combined with the highly portable software architecture of eLua, allow for easy porting of the project to a large variety of architectures. The peripheral access libraries/modules exported by eLua are also portable by design, so one could run a Lua program (without or with very few modifications) on every eLua supported platform. This brings an unprecedent level of portability to the embedded aplications world. eLua inherits the minimalistic and functional design of Lua, staying in line with the well known KISS, Keep It Small and Simple philosophy.

Friday, 26 March 2010

Army of Lawnbots

While I have no advances in my project (I decided to not post, explicitly, about my procrastination habits) here are some interesting news about DIY robots:

Just viewed the Hackaday post about the Lawnbot400, a robot lawnmower.
Very nice!
Imagine a bunch of those moving in a synchronized way on big, irregular, field...