https://iridia.ulb.ac.be/w/api.php?action=feedcontributions&user=Arne&feedformat=atom
IridiaWiki - User contributions [en]
2024-03-28T12:22:10Z
User contributions
MediaWiki 1.35.4
https://iridia.ulb.ac.be/w/index.php?title=Allocations_de_chomage&diff=7064
Allocations de chomage
2015-03-02T16:00:08Z
<p>Arne: </p>
<hr />
<div>Last update: Feburary 2015<br />
<b> The information below may be outdated, please be nice and correct/update the information if you know something has changed. </b><br />
<br />
So, if you satisfy these 2 conditions:<br />
<br />
* You ended up in this page (guess you did)<br />
* You did it because you searched it<br />
<br />
then you are another lucky guy that is not payed anymore. Congratulations!!! Welcome to the club.<br />
<br />
This page is meant to help you understand what is the process to follow in order to ask for the <b> allocations de chomage </b><br />
<br />
<b> NOTICE that you can ask the allocation de chomage also if your grant is temporarily suspended (i.e., even if your contract is not ended yet). </b><br />
<br />
In this page you can find:<br />
<br />
* [[#anc1 | Useful links]] (Some links)<br />
* [[#anc2 | Procedure to follow]] (What are the steps to be undertaken to ask for the unemployement)<br />
* [[#anc3 | Monthly duty: the control paper]] (Bureucracy to do every month to get the money)<br />
* [[#anc4 | Example]] (An example with date an numbers, to resume)<br />
* [[#anc5 | Other stuff]] (Other things that will happen)<br />
<br />
<b> Some things are a bit fuzzy, I know, but I'm living this shit right now and when I started I had to figure out everything by myself, so be thankful and good luck! </b><br />
<br />
== <div id="anc1">Useful links and contacts</div> ==<br />
<br />
Some useful links and contacts:<br />
<br />
* [https://www.hvw.fgov.be/fr CAPAC]: the guys that will pay you<br />
<br />
* [http://www.onem.fgov.be National office for employement]: you can find some information and documents there<br />
<br />
* LECLERCQ Sarah <Sarah.leclercq@ulb.ac.be> and AGBANI Yassine <yassine.agbani@ulb.ac.be> seems to be the resposibles for the finance aspects for phd students.<br />
<br />
* Madame Antonella Bacchiocchi (Bulding S - 6th floor) can also give you lots of information about the procedure for asking the allocations de chomage.<br />
Antonella Bacchiocchi - Département de l'Administration Financière - DAF-Service des Traitements<br />
Tel. 32(0)2 6502358 - Fax 32(0)2 6504689 - Antonella.Bacchiocchi@ulb.ac.be<br />
<br />
== <div id="anc2">Procedure to follow</div> ==<br />
<br />
The one described in the following is the procedure by which we asked the chomage.<br />
<br />
The steps to follow are:<br />
<br />
* To be granted the allocation de chomage, you must be "searching for employement". This means inscribing online to [http://www.actiris.be/ ACTIRIS]. '''You must do this within one week after your contract expires.''' (You can't do it earlier.) This is the one deadline you shouldn't fuck up. When you inscribe to ACTIRIS you can print a receipt that is needed when going to the organism that pays you (CAPAC in our case, see following). <br />
<br />
* You need to get the C4 document from your previous employer (ULB, FNRS or whichever body paid you). This document proves that you have been working X hours per week and it is also required by the CAPAC. <br />
** If you've been paid by the ULB, the person you have to contact to get the C4 is Monsieur AGBANI Yassine <yassine.agbani@ulb.ac.be>. It is better that you warn him before (one week was good for us) your contract expires, telling him that you "need the C4 for the allocations de chomage". The day your contract expires you can go and fetch this this C4 at the personnel department of ULB (Building S).<br />
** If you have been paid by FNRS, you need to contact Xavier HELLEBAUT <xavier.hellebaut@frs-fnrs.be>. Also in this case, plan a week for them to produce the document and mail it to you.<br />
<br />
* Once you have the C4 you need to apply to an organism that pays the allocations. It can be either be a union ("syndicat") or the governmental body (the default). We have to use the [http://www.hvw.fgov.be/FR/homefr.htm CAPAC] as there's no union for PhD students. You have to show up to this CAPAC office (address on website), with the C4, your Belgian ID card, and the proof that you inscribed on ACTIRIS. Take a book, you'll have to wait at least for about an hour.<br />
<br />
* After 3-4 weeks, if everything is ok, you will receive a letter that says you have the right to the allocations de chomage. The amount of money you are going to get depends on your status (married, with children, living alone, etc etc)<br />
<br />
== <div id="anc3">Control papers</div> ==<br />
<br />
Every month you are supposed to compile a "control paper" (blue paper) that states what you have been doing in the previous month (unmenployed-working-vacation-illness). The CAPAC will give you some control papers when you introduce your request. If you need more you can ask via their website, they will send them by mail. It is best to hand the paper in the first day of the month (non mandatory: the earlier you hand it in, the earlier you get the money). A paper refers to the previous month, obviously. So, say, the 1st of June you hand in the paper that states what you've been doing in May. With the first control paper you also have to attach the receipt of ACTIRIS (which is probably going to be stapled on the control paper by the employee at the CAPAC office). Papers can either be put directly in a box that is inside CAPAC office (check opening hours, Belgian are too smart to leave a mailbox outside the office) or be sent by mail. Honestly, I preferred to go and put the paper in the box myself every month, your choice.<br />
<br />
'''Note that you can also do this electronically via CAPAC if you have a working Belgian ID and a card reader. Much much easier.'''<br />
<br />
== <div id="anc4">An example</div> ==<br />
<br />
Say I have a grant expiring the 31st of January, then:<br />
<br />
* January the 24th (1 week before) I send an email to mme BRIOT telling her that I'll need the C4 by the 31st.<br />
<br />
* The 31st (the grant expires) I go to fetch the C4. The same day I inscribe online to ACTIRIS and I print a proof of inscription<br />
<br />
* February the 1st I show up at the CAPAC office, with the C4, the belgian id card and the ACTIRIS receipt.<br />
<br />
* On March the 1st I hand in the first control paper (relative to February), with attached the ACTIRIS receipt. (Somewhere in between I received confirmation by mail that I have the right to the chomage)<br />
<br />
* After 4-5 days you get the money for the month of February.<br />
<br />
* On April the 1st I do a lot of jokes and I also hand in the control paper for March.<br />
<br />
* ... and so on. <br />
<br />
== <div id="anc5">Other stuff</div> ==<br />
<br />
What you are supposed to be doing is to apply for jobs. If you really are doing it, then save documents that prove it (CVs, mail sent, letters, whatever...).<br />
Eventually you will be contacted by ACTIRIS to show up in one of their offices. It usually happens for the first time 5-6 months after inscription. <br />
<br />
Giovanni:<br />
<blockquote><br />
At the meeting with ACTIRIS there will be a person that presents to you and to others what ACTIRIS does, what your duties are, what are the organisms involved etc. Rubbish. After the presentation, you will talk personally to an employee, which reviews the data you filled in on the ACTIRIS websites and checks it with you. These persons are supposed to be tutors and follow you. <br />
<br />
What I told my tutor is that I am finishing a PhD (i.e., in the process of writing the thesis, which is more or less true :)) and meanwhile I am applying for positions, mainly to university (so I could say it is hard to find a position, specially since they need post-docs or starting PhDs). Basically you have to give them the impression that you can search alone, so theydon't bother yoy. <br />
<br />
For what I understood, this "autonomy mode" can last 6 months, after that they will chase you more. I also understood that there is the possibility that they call you for a rendez-vous where you have to show the documents that you sent for applying for jobs (which I don't have). Consequences of a mis-behavior can be "sanctions" (no idea what they meant).<br />
</blockquote><br />
<br />
Arne:<br />
<blockquote><br />
First meeting was just an informational presentation on Actiris and the help they provide. 1 hours of talk, then I could leave. I imaging that there will be further meetings that follow.<br />
</blockquote></div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6697
E-Puck status
2014-01-20T12:44:30Z
<p>Arne: </p>
<hr />
<div>Latest updates (add your signature here)<br />
<br />
--[[User:Manubrambi|Manubrambi]] 11:25, 8 March 2013 (UTC)<br />
<br />
<br />
{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" width="100" | Camera<br />
! scope="col" width="100" | Proximity<br />
! scope="col" width="100" | Ground<br />
! scope="col" width="100" | RAB<br />
! scope="col" width="500" | Other info<br />
<br />
|- <br />
! scope="row" | 40<br />
| Manu<br />
| OK (no front camera)<br />
<br />
|- <br />
! scope="row" | 35<br />
| Arne<br />
| omnicam conn. instable/reboots<br />
<br />
|- <br />
! scope="row" | 58<br />
| Arne<br />
| omnicam conn. instable/reboots<br />
<br />
|-<br />
! scope="row" | 1322<br />
| Arne<br />
| Broken led #4<br />
<br />
<br />
|-<br />
|}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Status&diff=6573
TAM/Status
2013-11-14T11:30:39Z
<p>Arne: /* Status of all TAMs at IRIDIA */</p>
<hr />
<div>== Status of all TAMs at IRIDIA ==<br />
<br />
This list gives the status of all TAMs at IRIDIA. <br />
<br />
If you use the TAMs, '''PLEASE KEEP THIS LIST UP-TO DATE'''<br />
<br />
<br />
{| class="wikitable" style="align: left; border: 1px solid grey"<br />
! # !! Status !! Notes<br />
|-<br />
| 01 || OK<br />
|-<br />
| 02 || OK<br />
|-<br />
| 03 || OK<br />
|-<br />
| 04 || OK<br />
|-<br />
| 05 || OK<br />
|-<br />
| 06 || OK<br />
|-<br />
| 07 || OK || diffuser slightly to small<br />
|-<br />
| 08 || OK<br />
|-<br />
| 09 || OK<br />
|-<br />
| 10 || OK<br />
|-<br />
| 11 || OK<br />
|-<br />
| 12 || OK<br />
|-<br />
| 13 || OK<br />
|-<br />
| 14 || OK<br />
|-<br />
| 15 || OK<br />
|-<br />
| 16 || OK<br />
|-<br />
| 17 || OK<br />
|-<br />
| 18 || OK<br />
|-<br />
| 19 || OK<br />
|-<br />
| 20 || OK<br />
|-<br />
| 21 || OK<br />
|-<br />
| 22 || OK<br />
|-<br />
| 23 || OK<br />
|-<br />
| 24 || OK<br />
|-<br />
| 25 || OK<br />
|-<br />
| 26 || OK<br />
|-<br />
| 27 || OK<br />
|-<br />
| 28 || OK<br />
|-<br />
| 29 || OK<br />
|-<br />
| 30 || OK<br />
|-<br />
| 31 || OK<br />
|-<br />
| 32 || OK<br />
|-<br />
| 33 || OK<br />
|-<br />
| 34 || OK<br />
|-<br />
| 35 || OK<br />
|-<br />
| 36 || OK<br />
|-<br />
| 37 || OK<br />
|-<br />
| 38 || OK<br />
|-<br />
| 39 || OK<br />
|-<br />
| 40 || OK<br />
|-<br />
| 41 || OK<br />
|-<br />
| 42 || OK<br />
|-<br />
| 43 || OK<br />
|-<br />
| 44 || OK<br />
|-<br />
| 45 || OK<br />
|-<br />
| 46 || OK<br />
|-<br />
| 47 || OK<br />
|-<br />
| 48 || OK<br />
|-<br />
| 49 || OK<br />
|-<br />
| 50 || OK<br />
|-<br />
|}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Status&diff=6572
TAM/Status
2013-11-14T11:29:29Z
<p>Arne: /* Status of all TAMs at IRIDIA */</p>
<hr />
<div>== Status of all TAMs at IRIDIA ==<br />
<br />
This list gives the status of all TAMs at IRIDIA. <br />
<br />
If you use the TAMs, '''PLEASE KEEP THIS LIST UP-TO DATE'''<br />
<br />
<br />
{| class="wikitable" style="border: 1px solid grey"<br />
! # !! Status !! Notes<br />
|-<br />
| 01 || OK<br />
|-<br />
| 02 || OK<br />
|-<br />
| 03 || OK<br />
|-<br />
| 04 || OK<br />
|-<br />
| 05 || OK<br />
|-<br />
| 06 || OK<br />
|-<br />
| 07 || OK || diffuser slightly to small<br />
|-<br />
| 08 || OK<br />
|-<br />
| 09 || OK<br />
|-<br />
| 10 || OK<br />
|-<br />
| 11 || OK<br />
|-<br />
| 12 || OK<br />
|-<br />
| 13 || OK<br />
|-<br />
| 14 || OK<br />
|-<br />
| 15 || OK<br />
|-<br />
| 16 || OK<br />
|-<br />
| 17 || OK<br />
|-<br />
| 18 || OK<br />
|-<br />
| 19 || OK<br />
|-<br />
| 20 || OK<br />
|-<br />
| 21 || OK<br />
|-<br />
| 22 || OK<br />
|-<br />
| 23 || OK<br />
|-<br />
| 24 || OK<br />
|-<br />
| 25 || OK<br />
|-<br />
| 26 || OK<br />
|-<br />
| 27 || OK<br />
|-<br />
| 28 || OK<br />
|-<br />
| 29 || OK<br />
|-<br />
| 30 || OK<br />
|-<br />
| 31 || OK<br />
|-<br />
| 32 || OK<br />
|-<br />
| 33 || OK<br />
|-<br />
| 34 || OK<br />
|-<br />
| 35 || OK<br />
|-<br />
| 36 || OK<br />
|-<br />
| 37 || OK<br />
|-<br />
| 38 || OK<br />
|-<br />
| 39 || OK<br />
|-<br />
| 40 || OK<br />
|-<br />
| 41 || OK<br />
|-<br />
| 42 || OK<br />
|-<br />
| 43 || OK<br />
|-<br />
| 44 || OK<br />
|-<br />
| 45 || OK<br />
|-<br />
| 46 || OK<br />
|-<br />
| 47 || OK<br />
|-<br />
| 48 || OK<br />
|-<br />
| 49 || OK<br />
|-<br />
| 50 || OK<br />
|-<br />
|}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Status&diff=6571
TAM/Status
2013-11-14T11:28:37Z
<p>Arne: /* Status of all TAMs at IRIDIA */</p>
<hr />
<div>== Status of all TAMs at IRIDIA ==<br />
<br />
This list gives the status of all TAMs at IRIDIA. <br />
<br />
If you use the TAMs, '''PLEASE KEEP THIS LIST UP-TO DATE'''<br />
<br />
<br />
{| class="wikitable"<br />
! # !! Status !! Notes<br />
|-<br />
| 01 || OK<br />
|-<br />
| 02 || OK<br />
|-<br />
| 03 || OK<br />
|-<br />
| 04 || OK<br />
|-<br />
| 05 || OK<br />
|-<br />
| 06 || OK<br />
|-<br />
| 07 || OK || diffuser slightly to small<br />
|-<br />
| 08 || OK<br />
|-<br />
| 09 || OK<br />
|-<br />
| 10 || OK<br />
|-<br />
| 11 || OK<br />
|-<br />
| 12 || OK<br />
|-<br />
| 13 || OK<br />
|-<br />
| 14 || OK<br />
|-<br />
| 15 || OK<br />
|-<br />
| 16 || OK<br />
|-<br />
| 17 || OK<br />
|-<br />
| 18 || OK<br />
|-<br />
| 19 || OK<br />
|-<br />
| 20 || OK<br />
|-<br />
| 21 || OK<br />
|-<br />
| 22 || OK<br />
|-<br />
| 23 || OK<br />
|-<br />
| 24 || OK<br />
|-<br />
| 25 || OK<br />
|-<br />
| 26 || OK<br />
|-<br />
| 27 || OK<br />
|-<br />
| 28 || OK<br />
|-<br />
| 29 || OK<br />
|-<br />
| 30 || OK<br />
|-<br />
| 31 || OK<br />
|-<br />
| 32 || OK<br />
|-<br />
| 33 || OK<br />
|-<br />
| 34 || OK<br />
|-<br />
| 35 || OK<br />
|-<br />
| 36 || OK<br />
|-<br />
| 37 || OK<br />
|-<br />
| 38 || OK<br />
|-<br />
| 39 || OK<br />
|-<br />
| 40 || OK<br />
|-<br />
| 41 || OK<br />
|-<br />
| 42 || OK<br />
|-<br />
| 43 || OK<br />
|-<br />
| 44 || OK<br />
|-<br />
| 45 || OK<br />
|-<br />
| 46 || OK<br />
|-<br />
| 47 || OK<br />
|-<br />
| 48 || OK<br />
|-<br />
| 49 || OK<br />
|-<br />
| 50 || OK<br />
|-<br />
|}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Status&diff=6570
TAM/Status
2013-11-14T11:28:24Z
<p>Arne: /* Status of all TAMs at IRIDIA */</p>
<hr />
<div>== Status of all TAMs at IRIDIA ==<br />
<br />
This list gives the status of all TAMs at IRIDIA. If you use the TAMs, '''PLEASE KEEP THIS LIST UP-TO DATE'''<br />
<br />
{|class="wikitable"<br />
! # !! Status !! Notes<br />
|-<br />
| 01 || OK<br />
|-<br />
| 02 || OK<br />
|-<br />
| 03 || OK<br />
|-<br />
| 04 || OK<br />
|-<br />
| 05 || OK<br />
|-<br />
| 06 || OK<br />
|-<br />
| 07 || OK || diffuser slightly to small<br />
|-<br />
| 08 || OK<br />
|-<br />
| 09 || OK<br />
|-<br />
| 10 || OK<br />
|-<br />
| 11 || OK<br />
|-<br />
| 12 || OK<br />
|-<br />
| 13 || OK<br />
|-<br />
| 14 || OK<br />
|-<br />
| 15 || OK<br />
|-<br />
| 16 || OK<br />
|-<br />
| 17 || OK<br />
|-<br />
| 18 || OK<br />
|-<br />
| 19 || OK<br />
|-<br />
| 20 || OK<br />
|-<br />
| 21 || OK<br />
|-<br />
| 22 || OK<br />
|-<br />
| 23 || OK<br />
|-<br />
| 24 || OK<br />
|-<br />
| 25 || OK<br />
|-<br />
| 26 || OK<br />
|-<br />
| 27 || OK<br />
|-<br />
| 28 || OK<br />
|-<br />
| 29 || OK<br />
|-<br />
| 30 || OK<br />
|-<br />
| 31 || OK<br />
|-<br />
| 32 || OK<br />
|-<br />
| 33 || OK<br />
|-<br />
| 34 || OK<br />
|-<br />
| 35 || OK<br />
|-<br />
| 36 || OK<br />
|-<br />
| 37 || OK<br />
|-<br />
| 38 || OK<br />
|-<br />
| 39 || OK<br />
|-<br />
| 40 || OK<br />
|-<br />
| 41 || OK<br />
|-<br />
| 42 || OK<br />
|-<br />
| 43 || OK<br />
|-<br />
| 44 || OK<br />
|-<br />
| 45 || OK<br />
|-<br />
| 46 || OK<br />
|-<br />
| 47 || OK<br />
|-<br />
| 48 || OK<br />
|-<br />
| 49 || OK<br />
|-<br />
| 50 || OK<br />
|-<br />
|}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Status&diff=6569
TAM/Status
2013-11-14T11:28:10Z
<p>Arne: /* Status of all TAMs at IRIDIA */</p>
<hr />
<div>== Status of all TAMs at IRIDIA ==<br />
<br />
This list gives the status of all TAMs at IRIDIA. If you use the TAMs, '''PLEASE KEEP THIS LIST UP-TO DATE'''<br />
<br />
{|<br />
! # !! Status !! Notes<br />
|-<br />
| 01 || OK<br />
|-<br />
| 02 || OK<br />
|-<br />
| 03 || OK<br />
|-<br />
| 04 || OK<br />
|-<br />
| 05 || OK<br />
|-<br />
| 06 || OK<br />
|-<br />
| 07 || OK || diffuser slightly to small<br />
|-<br />
| 08 || OK<br />
|-<br />
| 09 || OK<br />
|-<br />
| 10 || OK<br />
|-<br />
| 11 || OK<br />
|-<br />
| 12 || OK<br />
|-<br />
| 13 || OK<br />
|-<br />
| 14 || OK<br />
|-<br />
| 15 || OK<br />
|-<br />
| 16 || OK<br />
|-<br />
| 17 || OK<br />
|-<br />
| 18 || OK<br />
|-<br />
| 19 || OK<br />
|-<br />
| 20 || OK<br />
|-<br />
| 21 || OK<br />
|-<br />
| 22 || OK<br />
|-<br />
| 23 || OK<br />
|-<br />
| 24 || OK<br />
|-<br />
| 25 || OK<br />
|-<br />
| 26 || OK<br />
|-<br />
| 27 || OK<br />
|-<br />
| 28 || OK<br />
|-<br />
| 29 || OK<br />
|-<br />
| 30 || OK<br />
|-<br />
| 31 || OK<br />
|-<br />
| 32 || OK<br />
|-<br />
| 33 || OK<br />
|-<br />
| 34 || OK<br />
|-<br />
| 35 || OK<br />
|-<br />
| 36 || OK<br />
|-<br />
| 37 || OK<br />
|-<br />
| 38 || OK<br />
|-<br />
| 39 || OK<br />
|-<br />
| 40 || OK<br />
|-<br />
| 41 || OK<br />
|-<br />
| 42 || OK<br />
|-<br />
| 43 || OK<br />
|-<br />
| 44 || OK<br />
|-<br />
| 45 || OK<br />
|-<br />
| 46 || OK<br />
|-<br />
| 47 || OK<br />
|-<br />
| 48 || OK<br />
|-<br />
| 49 || OK<br />
|-<br />
| 50 || OK<br />
|-<br />
|}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Status&diff=6568
TAM/Status
2013-11-14T11:27:51Z
<p>Arne: Created page with "== Status of all TAMs at IRIDIA == This list gives the status of all TAMs at IRIDIA. If you use the TAMs, '''PLEASE KEEP THIS LIST UP-TO DATE''' {| ! # !! Status !! Notes !- | …"</p>
<hr />
<div>== Status of all TAMs at IRIDIA ==<br />
<br />
This list gives the status of all TAMs at IRIDIA. If you use the TAMs, '''PLEASE KEEP THIS LIST UP-TO DATE'''<br />
<br />
{|<br />
! # !! Status !! Notes<br />
!-<br />
| 01 || OK<br />
|-<br />
| 02 || OK<br />
|-<br />
| 03 || OK<br />
|-<br />
| 04 || OK<br />
|-<br />
| 05 || OK<br />
|-<br />
| 06 || OK<br />
|-<br />
| 07 || OK || diffuser slightly to small<br />
|-<br />
| 08 || OK<br />
|-<br />
| 09 || OK<br />
|-<br />
| 10 || OK<br />
|-<br />
| 11 || OK<br />
|-<br />
| 12 || OK<br />
|-<br />
| 13 || OK<br />
|-<br />
| 14 || OK<br />
|-<br />
| 15 || OK<br />
|-<br />
| 16 || OK<br />
|-<br />
| 17 || OK<br />
|-<br />
| 18 || OK<br />
|-<br />
| 19 || OK<br />
|-<br />
| 20 || OK<br />
|-<br />
| 21 || OK<br />
|-<br />
| 22 || OK<br />
|-<br />
| 23 || OK<br />
|-<br />
| 24 || OK<br />
|-<br />
| 25 || OK<br />
|-<br />
| 26 || OK<br />
|-<br />
| 27 || OK<br />
|-<br />
| 28 || OK<br />
|-<br />
| 29 || OK<br />
|-<br />
| 30 || OK<br />
|-<br />
| 31 || OK<br />
|-<br />
| 32 || OK<br />
|-<br />
| 33 || OK<br />
|-<br />
| 34 || OK<br />
|-<br />
| 35 || OK<br />
|-<br />
| 36 || OK<br />
|-<br />
| 37 || OK<br />
|-<br />
| 38 || OK<br />
|-<br />
| 39 || OK<br />
|-<br />
| 40 || OK<br />
|-<br />
| 41 || OK<br />
|-<br />
| 42 || OK<br />
|-<br />
| 43 || OK<br />
|-<br />
| 44 || OK<br />
|-<br />
| 45 || OK<br />
|-<br />
| 46 || OK<br />
|-<br />
| 47 || OK<br />
|-<br />
| 48 || OK<br />
|-<br />
| 49 || OK<br />
|-<br />
| 50 || OK<br />
|-<br />
|}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6567
Task Abstraction Module
2013-11-14T11:23:10Z
<p>Arne: /* Related pages */</p>
<hr />
<div>== Task Abstraction Module ==<br />
<br />
<br />
=== Related pages ===<br />
<br />
* [[TAM/Status|Status of all TAMs at IRIDIA]]<br />
* [[TAM/Publications|List of publications using the TAM]]<br />
* [[TAM/Hardware|Description of hardware]]<br />
* See http://arnuschky.github.io/iridia-tam/ for final "release" info<br />
* Supplementary materials: http://iridia.ulb.ac.be/supp/IridiaSupp2012-002/<br />
<br />
=== How-to cite ===<br />
<br />
Will change soon.<br />
<br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}<br />
<br />
<br />
=== Sources/GIT repositories ===<br />
<br />
* Final "release" git: https://github.com/arnuschky/iridia-tam <br />
* IRIDIA development git: https://iridia-dev.ulb.ac.be/projects/iridia-tam.git (includes paper sources, experiments etc)<br />
<br />
<br />
=== The coordinator ===<br />
TBD<br />
==== Write a controller ====<br />
TBD<br />
<br />
<br />
=== The Firmware ===<br />
TBD<br />
==== Flash a TAM ====<br />
TBD</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Publications&diff=6566
TAM/Publications
2013-11-14T11:18:56Z
<p>Arne: </p>
<hr />
<div><br />
To be extended<br />
<br />
== Brutschy et al. ==<br />
<br />
Technical report describing the TAM<br />
<br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Publications&diff=6565
TAM/Publications
2013-11-14T11:18:40Z
<p>Arne: Created page with " == Brutschy et al. == Technical report describing the TAM @techreport{BruPinBai-etal2010:IridiaTAM, Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and A…"</p>
<hr />
<div><br />
<br />
== Brutschy et al. ==<br />
<br />
Technical report describing the TAM<br />
<br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6564
Task Abstraction Module
2013-11-14T11:17:51Z
<p>Arne: </p>
<hr />
<div>== Task Abstraction Module ==<br />
<br />
<br />
=== Related pages ===<br />
<br />
* [[TAM/List|List of TAMs]]<br />
* [[TAM/Publications|List of publications using the TAM]]<br />
* [[TAM/Hardware|Description of hardware]]<br />
* See http://arnuschky.github.io/iridia-tam/ for final "release" info<br />
* Supplementary materials: http://iridia.ulb.ac.be/supp/IridiaSupp2012-002/<br />
<br />
<br />
=== How-to cite ===<br />
<br />
Will change soon.<br />
<br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}<br />
<br />
<br />
=== Sources/GIT repositories ===<br />
<br />
* Final "release" git: https://github.com/arnuschky/iridia-tam <br />
* IRIDIA development git: https://iridia-dev.ulb.ac.be/projects/iridia-tam.git (includes paper sources, experiments etc)<br />
<br />
<br />
=== The coordinator ===<br />
TBD<br />
==== Write a controller ====<br />
TBD<br />
<br />
<br />
=== The Firmware ===<br />
TBD<br />
==== Flash a TAM ====<br />
TBD</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6563
Task Abstraction Module
2013-11-14T11:17:24Z
<p>Arne: /* Related pages */</p>
<hr />
<div>== Task Abstraction Module ==<br />
<br />
<br />
=== Related pages ===<br />
<br />
* [[TAM/List|List of TAMs]]<br />
* [[TAM/Publications|List of publications using the TAM]]<br />
* [[TAM/Hardware|Description of hardware]]<br />
* See http://arnuschky.github.io/iridia-tam/ for final "release" info<br />
* Supplementary materials: http://iridia.ulb.ac.be/supp/IridiaSupp2012-002/<br />
<br />
=== How-to cite ===<br />
<br />
Will change soon.<br />
<br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}<br />
<br />
=== Sources/GIT repositories ===<br />
<br />
* Final "release" git: https://github.com/arnuschky/iridia-tam <br />
* IRIDIA development git: https://iridia-dev.ulb.ac.be/projects/iridia-tam.git (includes paper sources, experiments etc)<br />
<br />
=== The coordinator ===<br />
TBD<br />
==== Write a controller ====<br />
TBD<br />
<br />
<br />
=== The Firmware ===<br />
TBD<br />
==== Flash a TAM ====<br />
TBD</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6562
Task Abstraction Module
2013-11-14T11:17:17Z
<p>Arne: /* Related pages */</p>
<hr />
<div>== Task Abstraction Module ==<br />
<br />
<br />
=== Related pages ===<br />
<br />
* [[TAM/List|List of TAMs]]<br />
* [[TAM/Publications|List of publications using the TAM]]<br />
* [[TAM/Hardware|Description of hardware]]<br />
* See http://arnuschky.github.io/iridia-tam/ for final "release" info<br />
* Supplementary materials: http://iridia.ulb.ac.be/supp/IridiaSupp2012-002/<br />
<br />
=== How-to cite ===<br />
<br />
Will change soon.<br />
<br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}<br />
<br />
=== Sources/GIT repositories ===<br />
<br />
* Final "release" git: https://github.com/arnuschky/iridia-tam <br />
* IRIDIA development git: https://iridia-dev.ulb.ac.be/projects/iridia-tam.git (includes paper sources, experiments etc)<br />
<br />
=== The coordinator ===<br />
TBD<br />
==== Write a controller ====<br />
TBD<br />
<br />
<br />
=== The Firmware ===<br />
TBD<br />
==== Flash a TAM ====<br />
TBD</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6561
Task Abstraction Module
2013-11-14T11:16:44Z
<p>Arne: /* How-to cite */</p>
<hr />
<div>== Task Abstraction Module ==<br />
<br />
<br />
=== Related pages ===<br />
<br />
* [[TAM/Publications|asdf]]<br />
* [[TAM/Publications]]<br />
* [[TAM/Hardware]]<br />
* See http://arnuschky.github.io/iridia-tam/ for final "release" info<br />
* Supplementary materials: http://iridia.ulb.ac.be/supp/IridiaSupp2012-002/<br />
<br />
=== How-to cite ===<br />
<br />
Will change soon.<br />
<br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}<br />
<br />
=== Sources/GIT repositories ===<br />
<br />
* Final "release" git: https://github.com/arnuschky/iridia-tam <br />
* IRIDIA development git: https://iridia-dev.ulb.ac.be/projects/iridia-tam.git (includes paper sources, experiments etc)<br />
<br />
=== The coordinator ===<br />
TBD<br />
==== Write a controller ====<br />
TBD<br />
<br />
<br />
=== The Firmware ===<br />
TBD<br />
==== Flash a TAM ====<br />
TBD</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6560
Task Abstraction Module
2013-11-14T11:16:27Z
<p>Arne: /* Sources/GIT repositories */</p>
<hr />
<div>== Task Abstraction Module ==<br />
<br />
<br />
=== Related pages ===<br />
<br />
* [[TAM/Publications|asdf]]<br />
* [[TAM/Publications]]<br />
* [[TAM/Hardware]]<br />
* See http://arnuschky.github.io/iridia-tam/ for final "release" info<br />
* Supplementary materials: http://iridia.ulb.ac.be/supp/IridiaSupp2012-002/<br />
<br />
=== How-to cite ===<br />
<br />
Will change soon.<br />
<br />
<code><br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}<br />
</code><br />
<br />
=== Sources/GIT repositories ===<br />
<br />
* Final "release" git: https://github.com/arnuschky/iridia-tam <br />
* IRIDIA development git: https://iridia-dev.ulb.ac.be/projects/iridia-tam.git (includes paper sources, experiments etc)<br />
<br />
=== The coordinator ===<br />
TBD<br />
==== Write a controller ====<br />
TBD<br />
<br />
<br />
=== The Firmware ===<br />
TBD<br />
==== Flash a TAM ====<br />
TBD</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6559
Task Abstraction Module
2013-11-14T11:16:18Z
<p>Arne: </p>
<hr />
<div>== Task Abstraction Module ==<br />
<br />
<br />
=== Related pages ===<br />
<br />
* [[TAM/Publications|asdf]]<br />
* [[TAM/Publications]]<br />
* [[TAM/Hardware]]<br />
* See http://arnuschky.github.io/iridia-tam/ for final "release" info<br />
* Supplementary materials: http://iridia.ulb.ac.be/supp/IridiaSupp2012-002/<br />
<br />
=== How-to cite ===<br />
<br />
Will change soon.<br />
<br />
<code><br />
@techreport{BruPinBai-etal2010:IridiaTAM,<br />
Author = {Arne Brutschy and Giovanni Pini and Nadir Baiboun and Antal Decugni{\`e}re and Mauro Birattari},<br />
Title = {The {IRIDIA} \textsf{TAM}: A device for task abstraction for the e-puck robot},<br />
Institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
Year = {2010},<br />
Number = {TR/IRIDIA/2010-015},<br />
Address = {Brussels, Belgium},<br />
}<br />
</code><br />
<br />
=== Sources/GIT repositories ===<br />
<br />
* Final "release" git: https://github.com/arnuschky/iridia-tam <br />
* IRIDIA development git: https://iridia-dev.ulb.ac.be/projects/iridia-tam.git (includes paper sources, experiments etc)<br />
<br />
<br />
=== The coordinator ===<br />
TBD<br />
==== Write a controller ====<br />
TBD<br />
<br />
<br />
=== The Firmware ===<br />
TBD<br />
==== Flash a TAM ====<br />
TBD</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Hardware&diff=6558
TAM/Hardware
2013-11-14T11:08:46Z
<p>Arne: </p>
<hr />
<div>See paper for details.<br />
Will be added later.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Hardware&diff=6557
TAM/Hardware
2013-11-14T11:07:18Z
<p>Arne: Replaced content with "
See paper for details."</p>
<hr />
<div><br />
See paper for details.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Main_Page&diff=6556
Main Page
2013-11-14T11:06:38Z
<p>Arne: /* Robotics */</p>
<hr />
<div><!-- BANNER ACROSS TOP OF PAGE --><br />
{| id="mp-topbanner" style="width:100%; background:#fcfcfc; margin-top:1.2em; border:1px solid #ccc;" align=center<br />
| style="width:56%; color:#000;" |<br />
{| style="width:100%; border:none; background:none;"<br />
| style="width:100%; text-align:center; white-space:nowrap; color:#000;" |<br />
<div style="font-size:162%; border:none; margin:0; padding:.1em; color:#000;">Welcome to [http://iridia.ulb.ac.be IRIDIA]'s wiki.</div><br />
[[Image:Iridia_logo_fancy.png|link=|480px|center]]<br />
|}<br />
__NOTOC__<br />
<br />
<div id="Top"></div><br />
{| cellspacing="20" cellpadding="5" align=center <br />
|- <br />
<br />
|valign="top" width="50%" style="border:1px solid #cef2e0; background:#f5fffa;"|<br />
<h2 id="mp-tfa-h2" style="margin:3px; background:#cef2e0; font-size:120%; font-weight:bold; border:1px solid #a3bfb1; text-align:left; <br />
color:#000; padding:0.2em 0.4em;">[[#anc1 | Practicalities]]</h2><br />
* [[#anc1_1 | Moving and surviving in Brussels]] <br />
* [[#anc1_2 | Information for students]] <br />
* [[#anc1_3 | Useful informations]] (menu, pizza, etc...)<br />
* [[Lab responsibilities]] <br />
<br />
|valign="top" width="50%" style="border:1px solid #cedff2; background:#f5faff; vertical-align:top;"|<br />
<br />
<h2 id="mp-itn-h2" style="margin:3px; background:#cedff2; font-size:120%; font-weight:bold; border:1px solid #a3b0bf; text-align:left; color:#000; padding:0.2em 0.4em;">[[#anc2 | Research]]</h2><br />
<br />
* [[#anc2_1 | Robotics]] (S-Bots, E-pucks, Software, Links)<br />
<br />
* [[#anc2_2 | Optimization]] (Links)<br />
<br />
* [[IRIDIA Technical reports]]<br />
<br />
* [http://iridia.ulb.ac.be/seminars IRIDIA seminars]<br />
<br />
* [[#anc2_3 | Publications]] (how to publish IRIDIA reports, digital libraries)<br />
|- <br />
<br />
|valign="top" width="50%" style="border:1px solid #ddcef2; background:#faf5ff; vertical-align:top; color:#000;"|<br />
<h2 id="mp-tfp-h2" style="margin:3px; background:#ddcef2; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#000; padding:0.2em 0.4em">[[#anc3 | Infrastructure]]</h2><br />
<br />
* [[#anc3_1 | Hardware]] (configuration, backup, cluster, etc.)<br />
* [[#anc3_2 | Software]] (HOWTOs, homepage, etc.)<br />
* [[#material | Diverse material]] (Logos, graphic material, proceedings, etc.)<br />
<br />
|valign="top" width="50%" style="padding: 2px; border:1px solid #FFEDCC; color: #000000; background: #FFFCE6;"|<br />
<h2 id="mp-tfp-h2" style="margin:3px; background: #FFEDCC; font-size:120%; font-weight:bold; border:1px solid #cccccc; text-align:left; color:#000; padding:0.2em 0.4em">Weekly meetings</h2><br />
<br />
<!--* Alternate Thursdays at 15h00 : [[Robotics weekly meetings | Robotics meetings]]<br />
* Alternate Thursdays at 15h00 : [[Literature meetings | Literature meetings]] --><br />
* Wednesdays at 15h00 : [[Robotics weekly meetings | Robotics meetings]]<br />
* Thursdays at 10h30 : [[Administration weekly meetings | Administration weekly meeting]] <br />
* Thursdays at 11h00 : [[Optimization Group Meetings]]<br />
<br />
|}<br />
<br />
'''WARNING''' : we have changed the access policy of the wiki. To consult some sensitive information, you need a login.<br />
<br />
== Adding information ==<br />
<br />
A Wiki is an excellent tool to maintain dynamic information. If you want to add something to this Wiki feel very free contact the system administrator and get an account. It is straight-forward to add and change the information in MediaWiki. Simply press ''edit'' on the top of this page to see how it was done. If you create a link to a non-existing page within this Wiki you can create that page by following the link - of course you would need a login to do so!. Pictures and documents have to be [[Special:Upload|uploaded]] before they can be used on pages. All popular image formats are supported and pdf and ps documents are allowed .<br />
<br />
For more information on the Wiki mark-up language see [http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page Wikipedia's page about How to edit a page]. When you become good at it, you can make cool looking pages.<br />
<br />
<br />
== <div id="anc1">Practicalities</div> ==<br />
<br />
* <div id="anc1_1">'''Brussels'''</div><br />
** [[Moving to Brussels]] - What you need to know for moving to Brussels (housing, transport, health care, etc.).<br />
** [[Surviving in Brussels]] - French lessons, cultural events, etc.<br />
** [[Allocations de chomage]] - Allocations de chomage.<br />
<br />
* <div id="anc1_2">'''Students'''</div><br />
** [[What you need to begin to work in IRIDIA]] - Resources to activate to work at IRIDIA.<br />
** [[For students visiting IRIDIA]] - Information for new students coming to IRIDIA.<br />
** [[University Administration]] - (IMPORTANT!) The what, the where and the how of navigating university bureaucracy - inscription, regulations etc.<br />
** [[Equivalence]] - Step by step explanations to request an equivalence of diplomas from Belgium.<br />
** [[Funding]] - Information on getting funding for projects, scholarships and unemployment benefits in Belgium once the Ph.D. grant runs out.<br />
** [[StudentsIRIDIA | Students]] - Information on students in IRIDIA.<br />
** [http://www.ulb.ac.be/dep/financier/perso-avantages/index.html Intranet for ULB employees] - Web site with list of benefit for being ULB employees <br />
** [[Insurance while travelling abroad]] - ULB's insurance<br />
** [https://iridia.ulb.ac.be/cgi-bin/mailman/listinfo/ IRIDIA mailing lists]<br />
** [[ECTS formation doctorale]] - a description of what you can use as ECTS for your DEA/formation doctorale<br />
<br />
* <div id="anc1_3">'''Useful information'''</div><br />
** [[Working late | Pizza]] - menu for the local pizza place, it is a good idea to order in advance. <br />
** [http://wwwdev.ulb.ac.be/restaurants/solbosch_s/r_pub.php3 Weekly menu at ULB restaurant]<br />
** [http://www.snack44.net/ Snack 44] Menu for sandwich bar dans l'avenue de l'Université<br />
<br />
* <div id="lab_responsibilities">'''Lab responsibilities'''</div><br />
** [[Lab responsibilities]] - list of labs responsibilities/tasks and who takes care of them.<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
== <div id="anc2">Research</div> ==<br />
<br />
<br />
=== <div id="anc2_1">Robotics</div> ===<br />
<br />
* [[Robots | Main page for robots at IRIDIA]] - List of robots, technical information, how to access<br />
* [[Arena time slots]] - Reserve arena time<br />
* [[E-Pucks]] - All the information on how to use the e-pucks are here<br />
* [[Task Abstraction Module|The TAMs -- Task Abstraction Modules]] - All the information on how to use the TAMs are here<br />
<br />
* '''Software'''<br />
** [[ffmpeg | Using ffmpeg]] - Some examples on how to convert a set of frames to a video<br />
<br />
* '''Links & news'''<br />
** [http://iridia.ulb.ac.be/comp2sys/ COMP2SYS project website]<br />
** [[Robot labs around the World]]<br />
** [http://robots.net Read more news on robots.net...]<br />
** [[Old news]]<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
=== <div id="anc2_2">Optimization</div> ===<br />
<br />
* '''Links & news'''<br />
** [http://www.informs.org/Resources/ INFORMS OR/MS]<br />
** [http://143.129.203.3/eume/php/eume.main.php EU/ME]<br />
** [http://www.prism.uvsq.fr/~vdc/ECCO/ ECCO]<br />
* '''Multi-objective Algorithms Software'''<br />
** [http://www.tik.ee.ethz.ch/sop/pisa/ ETH - SOP - PISA]<br />
** [http://paradiseo.gforge.inria.fr/index.php?n=Main.MOEO ParadisEO-MOEO]<br />
** [http://shark-project.sourceforge.net/MOO-EALib/index.html Shark - MOO-EAlib]<br />
<br />
* '''Metaheuristics'''<br />
** [http://www.aco-metaheuristic.org Ant Colony Optimization]<br />
** [http://iew3.technion.ac.il/CE/about.php Cross Entropy Method]<br />
** [http://evonet.lri.fr/ Evolutionary Computing]<br />
** [http://www.research.att.com/~mgcr/grasp/gannbib/gannbib.html GRASP]<br />
** [http://www.tabusearch.net/ Tabu Search]<br />
* '''OR Software'''<br />
** [http://code.google.com/p/or-tools/ OR-Tools by Google]<br />
** [http://scip.zib.de/ SCIP]<br />
* '''Projects'''<br />
** [http://iridia.ulb.ac.be/comp2sys/ COMP2SYS]<br />
** [http://www.metaheuristics.org/ Metaheuristics Network]<br />
* '''Applications'''<br />
** [http://www.nada.kth.se/~viggo/wwwcompendium/ A compendium of NP optimization problems]<br />
** [http://www.tsp.gatech.edu/ TSP]<br />
** [http://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/ TSPLIB95] - A Traveling Salesman Problem Library<br />
** [http://www.seas.upenn.edu/qaplib/ QAPLIB] - A Quadratic Assignment Problem Library<br />
** [http://people.brunel.ac.uk/~mastjjb/jeb/info.html OR-Library]<br />
** [http://iridia.ulb.ac.be/~manuel/tsptw-instances Benchmark Instances for the Travelling Salesman Problem with Time Windows (TSPTW)]<br />
** [[Concorde]]<br />
* '''Experimental Analysis and Statistics'''<br />
** [http://www.r-project.org/ R project]<br />
** [[Tutorials_and_links_about_C%2C_R%2C_LateX_and_bash_(unix)#R | Tutorials and links about R]]<br />
** [http://www.statsoft.com/textbook/stathome.html Electronic Statistics Textbook. StatSoft, Inc. (2006)]<br />
** [http://www.itl.nist.gov/div898/handbook/ NIST/SEMATECH e-Handbook of Statistical Methods]<br />
**[http://www.keithbower.com/datasets/Audio%20Recordings.htm Videos on Statistical Concepts]<br />
* '''Software Development'''<br />
** [http://gcc.gnu.org/c99status.html C99 standard and use GCC compiler tools] - Suggested compiler<br />
** [http://www.gnu.org/prep/standards/standards.pdf GNU Coding Standards] - Suggested coding style guidelines<br />
** [http://www.gnu.org/software/gsl/ GSL] - GNU Scientific Library<br />
** [http://subversion.tigris.org/ Subversion] - Suggested version control tool (see the page on the IRIDIA [[Development Server]] how to use it inside the lab)<br />
** [http://www.stack.nl/~dimitri/doxygen/ Doxygen] - Suggested documentation tool for source code<br />
<center>[[#Top | Back to top]]</center><br />
<br />
=== Generic Tutorials and Links ===<br />
* [[Tutorials and links about C, R, LateX and bash (unix)]]<br />
<br />
=== Neural Networks ===<br />
* [[Neural Network Tutorials]]<br />
<br />
=== <div id="anc2_3">Publications</div> ===<br />
<br />
* [[IRIDIA Technical reports]] - Information on publishing a technical report and LaTeX package(s).<br />
* [[Access to Digital Libraries]] - Which on-line papers archive we have access from IRIDIA network. <br />
* [[Iridia Supplementary Information Instructions page]] - Information on HOW TO use the Iridia Supplementary Information page.<br />
* [[Write Better English]] - Basic pointers on how to raise the level of english in your paper.<br />
* [[Embed Fonts in your PDFs]] - A guide on how to embed fonts on your PDFs for submission to conferences.<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
== <div id="anc3">Infrastructure</div> ==<br />
<br />
* [[Infrastructure]] - Generalities, meetings, TODOS, etc.<br />
<br />
=== <div id="anc3_1">'''Hardware'''</div> ===<br />
* [[Workstation configuration]] - How to setup your personal workstation and laptop, printers, etc.<br />
* [[Backup Server]] - How to use the backup server of IRIDIA<br />
* [[Development Server]] - How to use the IRIDIA development server and how to use subversion repositories<br />
* IRIDIA Cluster: See the [http://majorana.ulb.ac.be/wordpress/ Cluster Website] for usage information, tips and updates.<br />
* [[Using the IRIDIA Experimental room]] - All you need to know to easily run real experiments.<br />
* [[Workshop]] - Everything you wanted to know about the workshop but were afraid to ask<br />
* [[Laser Cutter]]<br />
* [[Shakers]]<br />
<br />
=== <div id="anc3_2">'''Software'''</div> ===<br />
* [[Creating your own home page]] - How to create your own home.<br />
* See all [[Software HOWTOs]]<br />
* Suggested software for [[Workstation_configuration#For_Mac_OS_X_users | Mac OS X]] users<br />
* List of [[Available_commercial_software | commercial software]] we have in IRIDIA<br />
* Howto create a [[howto_create_new_svn_repos | new svn repository ]] on the iridia server<br />
* Tune your algorithm on the [[Tuning_your_algorithm_with_irace_on_the_IRIDIA_cluster|IRIDIA cluster with irace]]<br />
<br />
=== <div id="material">'''Diverse Material'''</div> ===<br />
* [[Logos]]<br />
* [https://iridia-dev.ulb.ac.be/projects/material/svn SVN repository of graphical material] (for access see [[Development Server]])<br />
* [https://iridia-dev.ulb.ac.be/projects/optbib/svn SVN repository of BiBTeX files] (for access see [[Development Server]])<br />
* [https://iridia-dev.ulb.ac.be/projects/optsrc/svn SVN repository of optimization source code and benchmark problems] (for access see [[Development Server]])<br />
* [[ProceedingsRepository| Repository of Proceedings]]<br />
<center>[[#Top | Back to top]]</center></div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Main_Page&diff=6555
Main Page
2013-11-14T11:05:03Z
<p>Arne: /* Robotics */</p>
<hr />
<div><!-- BANNER ACROSS TOP OF PAGE --><br />
{| id="mp-topbanner" style="width:100%; background:#fcfcfc; margin-top:1.2em; border:1px solid #ccc;" align=center<br />
| style="width:56%; color:#000;" |<br />
{| style="width:100%; border:none; background:none;"<br />
| style="width:100%; text-align:center; white-space:nowrap; color:#000;" |<br />
<div style="font-size:162%; border:none; margin:0; padding:.1em; color:#000;">Welcome to [http://iridia.ulb.ac.be IRIDIA]'s wiki.</div><br />
[[Image:Iridia_logo_fancy.png|link=|480px|center]]<br />
|}<br />
__NOTOC__<br />
<br />
<div id="Top"></div><br />
{| cellspacing="20" cellpadding="5" align=center <br />
|- <br />
<br />
|valign="top" width="50%" style="border:1px solid #cef2e0; background:#f5fffa;"|<br />
<h2 id="mp-tfa-h2" style="margin:3px; background:#cef2e0; font-size:120%; font-weight:bold; border:1px solid #a3bfb1; text-align:left; <br />
color:#000; padding:0.2em 0.4em;">[[#anc1 | Practicalities]]</h2><br />
* [[#anc1_1 | Moving and surviving in Brussels]] <br />
* [[#anc1_2 | Information for students]] <br />
* [[#anc1_3 | Useful informations]] (menu, pizza, etc...)<br />
* [[Lab responsibilities]] <br />
<br />
|valign="top" width="50%" style="border:1px solid #cedff2; background:#f5faff; vertical-align:top;"|<br />
<br />
<h2 id="mp-itn-h2" style="margin:3px; background:#cedff2; font-size:120%; font-weight:bold; border:1px solid #a3b0bf; text-align:left; color:#000; padding:0.2em 0.4em;">[[#anc2 | Research]]</h2><br />
<br />
* [[#anc2_1 | Robotics]] (S-Bots, E-pucks, Software, Links)<br />
<br />
* [[#anc2_2 | Optimization]] (Links)<br />
<br />
* [[IRIDIA Technical reports]]<br />
<br />
* [http://iridia.ulb.ac.be/seminars IRIDIA seminars]<br />
<br />
* [[#anc2_3 | Publications]] (how to publish IRIDIA reports, digital libraries)<br />
|- <br />
<br />
|valign="top" width="50%" style="border:1px solid #ddcef2; background:#faf5ff; vertical-align:top; color:#000;"|<br />
<h2 id="mp-tfp-h2" style="margin:3px; background:#ddcef2; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#000; padding:0.2em 0.4em">[[#anc3 | Infrastructure]]</h2><br />
<br />
* [[#anc3_1 | Hardware]] (configuration, backup, cluster, etc.)<br />
* [[#anc3_2 | Software]] (HOWTOs, homepage, etc.)<br />
* [[#material | Diverse material]] (Logos, graphic material, proceedings, etc.)<br />
<br />
|valign="top" width="50%" style="padding: 2px; border:1px solid #FFEDCC; color: #000000; background: #FFFCE6;"|<br />
<h2 id="mp-tfp-h2" style="margin:3px; background: #FFEDCC; font-size:120%; font-weight:bold; border:1px solid #cccccc; text-align:left; color:#000; padding:0.2em 0.4em">Weekly meetings</h2><br />
<br />
<!--* Alternate Thursdays at 15h00 : [[Robotics weekly meetings | Robotics meetings]]<br />
* Alternate Thursdays at 15h00 : [[Literature meetings | Literature meetings]] --><br />
* Wednesdays at 15h00 : [[Robotics weekly meetings | Robotics meetings]]<br />
* Thursdays at 10h30 : [[Administration weekly meetings | Administration weekly meeting]] <br />
* Thursdays at 11h00 : [[Optimization Group Meetings]]<br />
<br />
|}<br />
<br />
'''WARNING''' : we have changed the access policy of the wiki. To consult some sensitive information, you need a login.<br />
<br />
== Adding information ==<br />
<br />
A Wiki is an excellent tool to maintain dynamic information. If you want to add something to this Wiki feel very free contact the system administrator and get an account. It is straight-forward to add and change the information in MediaWiki. Simply press ''edit'' on the top of this page to see how it was done. If you create a link to a non-existing page within this Wiki you can create that page by following the link - of course you would need a login to do so!. Pictures and documents have to be [[Special:Upload|uploaded]] before they can be used on pages. All popular image formats are supported and pdf and ps documents are allowed .<br />
<br />
For more information on the Wiki mark-up language see [http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page Wikipedia's page about How to edit a page]. When you become good at it, you can make cool looking pages.<br />
<br />
<br />
== <div id="anc1">Practicalities</div> ==<br />
<br />
* <div id="anc1_1">'''Brussels'''</div><br />
** [[Moving to Brussels]] - What you need to know for moving to Brussels (housing, transport, health care, etc.).<br />
** [[Surviving in Brussels]] - French lessons, cultural events, etc.<br />
** [[Allocations de chomage]] - Allocations de chomage.<br />
<br />
* <div id="anc1_2">'''Students'''</div><br />
** [[What you need to begin to work in IRIDIA]] - Resources to activate to work at IRIDIA.<br />
** [[For students visiting IRIDIA]] - Information for new students coming to IRIDIA.<br />
** [[University Administration]] - (IMPORTANT!) The what, the where and the how of navigating university bureaucracy - inscription, regulations etc.<br />
** [[Equivalence]] - Step by step explanations to request an equivalence of diplomas from Belgium.<br />
** [[Funding]] - Information on getting funding for projects, scholarships and unemployment benefits in Belgium once the Ph.D. grant runs out.<br />
** [[StudentsIRIDIA | Students]] - Information on students in IRIDIA.<br />
** [http://www.ulb.ac.be/dep/financier/perso-avantages/index.html Intranet for ULB employees] - Web site with list of benefit for being ULB employees <br />
** [[Insurance while travelling abroad]] - ULB's insurance<br />
** [https://iridia.ulb.ac.be/cgi-bin/mailman/listinfo/ IRIDIA mailing lists]<br />
** [[ECTS formation doctorale]] - a description of what you can use as ECTS for your DEA/formation doctorale<br />
<br />
* <div id="anc1_3">'''Useful information'''</div><br />
** [[Working late | Pizza]] - menu for the local pizza place, it is a good idea to order in advance. <br />
** [http://wwwdev.ulb.ac.be/restaurants/solbosch_s/r_pub.php3 Weekly menu at ULB restaurant]<br />
** [http://www.snack44.net/ Snack 44] Menu for sandwich bar dans l'avenue de l'Université<br />
<br />
* <div id="lab_responsibilities">'''Lab responsibilities'''</div><br />
** [[Lab responsibilities]] - list of labs responsibilities/tasks and who takes care of them.<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
== <div id="anc2">Research</div> ==<br />
<br />
<br />
=== <div id="anc2_1">Robotics</div> ===<br />
<br />
* [[Robots | Main page for robots at IRIDIA]] - List of robots, technical information, how to access<br />
* [[Arena time slots]] - Reserve arena time<br />
* [[E-Pucks]] - All the information on how to use the e-pucks are here<br />
* [[TAM]] - All the information on how to use the TAM are here<br />
<br />
* '''Software'''<br />
** [[ffmpeg | Using ffmpeg]] - Some examples on how to convert a set of frames to a video<br />
<br />
* '''Links & news'''<br />
** [http://iridia.ulb.ac.be/comp2sys/ COMP2SYS project website]<br />
** [[Robot labs around the World]]<br />
** [http://robots.net Read more news on robots.net...]<br />
** [[Old news]]<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
=== <div id="anc2_2">Optimization</div> ===<br />
<br />
* '''Links & news'''<br />
** [http://www.informs.org/Resources/ INFORMS OR/MS]<br />
** [http://143.129.203.3/eume/php/eume.main.php EU/ME]<br />
** [http://www.prism.uvsq.fr/~vdc/ECCO/ ECCO]<br />
* '''Multi-objective Algorithms Software'''<br />
** [http://www.tik.ee.ethz.ch/sop/pisa/ ETH - SOP - PISA]<br />
** [http://paradiseo.gforge.inria.fr/index.php?n=Main.MOEO ParadisEO-MOEO]<br />
** [http://shark-project.sourceforge.net/MOO-EALib/index.html Shark - MOO-EAlib]<br />
<br />
* '''Metaheuristics'''<br />
** [http://www.aco-metaheuristic.org Ant Colony Optimization]<br />
** [http://iew3.technion.ac.il/CE/about.php Cross Entropy Method]<br />
** [http://evonet.lri.fr/ Evolutionary Computing]<br />
** [http://www.research.att.com/~mgcr/grasp/gannbib/gannbib.html GRASP]<br />
** [http://www.tabusearch.net/ Tabu Search]<br />
* '''OR Software'''<br />
** [http://code.google.com/p/or-tools/ OR-Tools by Google]<br />
** [http://scip.zib.de/ SCIP]<br />
* '''Projects'''<br />
** [http://iridia.ulb.ac.be/comp2sys/ COMP2SYS]<br />
** [http://www.metaheuristics.org/ Metaheuristics Network]<br />
* '''Applications'''<br />
** [http://www.nada.kth.se/~viggo/wwwcompendium/ A compendium of NP optimization problems]<br />
** [http://www.tsp.gatech.edu/ TSP]<br />
** [http://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/ TSPLIB95] - A Traveling Salesman Problem Library<br />
** [http://www.seas.upenn.edu/qaplib/ QAPLIB] - A Quadratic Assignment Problem Library<br />
** [http://people.brunel.ac.uk/~mastjjb/jeb/info.html OR-Library]<br />
** [http://iridia.ulb.ac.be/~manuel/tsptw-instances Benchmark Instances for the Travelling Salesman Problem with Time Windows (TSPTW)]<br />
** [[Concorde]]<br />
* '''Experimental Analysis and Statistics'''<br />
** [http://www.r-project.org/ R project]<br />
** [[Tutorials_and_links_about_C%2C_R%2C_LateX_and_bash_(unix)#R | Tutorials and links about R]]<br />
** [http://www.statsoft.com/textbook/stathome.html Electronic Statistics Textbook. StatSoft, Inc. (2006)]<br />
** [http://www.itl.nist.gov/div898/handbook/ NIST/SEMATECH e-Handbook of Statistical Methods]<br />
**[http://www.keithbower.com/datasets/Audio%20Recordings.htm Videos on Statistical Concepts]<br />
* '''Software Development'''<br />
** [http://gcc.gnu.org/c99status.html C99 standard and use GCC compiler tools] - Suggested compiler<br />
** [http://www.gnu.org/prep/standards/standards.pdf GNU Coding Standards] - Suggested coding style guidelines<br />
** [http://www.gnu.org/software/gsl/ GSL] - GNU Scientific Library<br />
** [http://subversion.tigris.org/ Subversion] - Suggested version control tool (see the page on the IRIDIA [[Development Server]] how to use it inside the lab)<br />
** [http://www.stack.nl/~dimitri/doxygen/ Doxygen] - Suggested documentation tool for source code<br />
<center>[[#Top | Back to top]]</center><br />
<br />
=== Generic Tutorials and Links ===<br />
* [[Tutorials and links about C, R, LateX and bash (unix)]]<br />
<br />
=== Neural Networks ===<br />
* [[Neural Network Tutorials]]<br />
<br />
=== <div id="anc2_3">Publications</div> ===<br />
<br />
* [[IRIDIA Technical reports]] - Information on publishing a technical report and LaTeX package(s).<br />
* [[Access to Digital Libraries]] - Which on-line papers archive we have access from IRIDIA network. <br />
* [[Iridia Supplementary Information Instructions page]] - Information on HOW TO use the Iridia Supplementary Information page.<br />
* [[Write Better English]] - Basic pointers on how to raise the level of english in your paper.<br />
* [[Embed Fonts in your PDFs]] - A guide on how to embed fonts on your PDFs for submission to conferences.<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
== <div id="anc3">Infrastructure</div> ==<br />
<br />
* [[Infrastructure]] - Generalities, meetings, TODOS, etc.<br />
<br />
=== <div id="anc3_1">'''Hardware'''</div> ===<br />
* [[Workstation configuration]] - How to setup your personal workstation and laptop, printers, etc.<br />
* [[Backup Server]] - How to use the backup server of IRIDIA<br />
* [[Development Server]] - How to use the IRIDIA development server and how to use subversion repositories<br />
* IRIDIA Cluster: See the [http://majorana.ulb.ac.be/wordpress/ Cluster Website] for usage information, tips and updates.<br />
* [[Using the IRIDIA Experimental room]] - All you need to know to easily run real experiments.<br />
* [[Workshop]] - Everything you wanted to know about the workshop but were afraid to ask<br />
* [[Laser Cutter]]<br />
* [[Shakers]]<br />
<br />
=== <div id="anc3_2">'''Software'''</div> ===<br />
* [[Creating your own home page]] - How to create your own home.<br />
* See all [[Software HOWTOs]]<br />
* Suggested software for [[Workstation_configuration#For_Mac_OS_X_users | Mac OS X]] users<br />
* List of [[Available_commercial_software | commercial software]] we have in IRIDIA<br />
* Howto create a [[howto_create_new_svn_repos | new svn repository ]] on the iridia server<br />
* Tune your algorithm on the [[Tuning_your_algorithm_with_irace_on_the_IRIDIA_cluster|IRIDIA cluster with irace]]<br />
<br />
=== <div id="material">'''Diverse Material'''</div> ===<br />
* [[Logos]]<br />
* [https://iridia-dev.ulb.ac.be/projects/material/svn SVN repository of graphical material] (for access see [[Development Server]])<br />
* [https://iridia-dev.ulb.ac.be/projects/optbib/svn SVN repository of BiBTeX files] (for access see [[Development Server]])<br />
* [https://iridia-dev.ulb.ac.be/projects/optsrc/svn SVN repository of optimization source code and benchmark problems] (for access see [[Development Server]])<br />
* [[ProceedingsRepository| Repository of Proceedings]]<br />
<center>[[#Top | Back to top]]</center></div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Moving_to_Brussels&diff=6239
Moving to Brussels
2013-01-21T13:47:01Z
<p>Arne: /* Short-term accommodation */</p>
<hr />
<div>Moving to a new country can be both exciting and frustrating. Everything is fascinating and at the same time it can be confusing to find your way around a new city, a culture and possibly a new language. The objective of this page is to provide some information for newcomers to IRIDIA, such as Ph.D. students, and Brussels in general in order to make the initial couple of weeks a bit easier. The information contained in this document has been collected by people who have been through the process. If you have any questions, suggestions, additions or such, please make them.<br />
<br />
NOTE for ITALIANS: for any kind of information or help, there is the [http://www.patronatoacli.be/it/le-nostre-sedi-20 Patronato Acli]. They can help for any kind of issues you have (accommodation, health,...) and it's all for free.<br />
<br />
== Short-term accommodation ==<br />
<br />
For short-term accommodation (that is a place to sleep for the first couple of weeks you are in Brussels) a bed and breakfast is a convenient option. Depending on your budget and confidence in finding more long-term accommodation quickly there is a number of different options to choose from:<br />
<br />
* [http://www.sophiesrooms.be/ Sophie’s Rooms] is a Bed &amp; Breakfast with very nice rooms. They are more in the upper price range (see website). Close to Diamant, basically between the airport and IRIDIA, it's perfectly situated for short-term visitors that arrive by plane. Disclaimer: the couple that runs the B&amp;B are friends of Arne.<br />
* [http://www.csfds.be Centre Sportif de la Foret de Soignes] is a sports facility in the outskirts of Brussels. It is quite cheap for longer stays at ~230 euro/month or ~16 euros/day for shorter stays. There is easy access to the university: [http://www.stib.irisnet.be/FR/40000Fre/B/40072F.htm Bus number 72] runs directly between ULB and the center (also known as A.D.E.P.S.) and the ride is 15 to 20 mins. And that is about all the good things that there are to say about the place. Breakfast is not included, the rooms are very basic, the reception closes at 23h00 on weekdays, 22h00 on Saturdays and at 20h00 on Sundays. You either have to be there before closing time or you'll have to arranged with the Security staff or the reception, that you will come at a later hour. Being so far out is by no means an ideal way to get acquainted with the city. However, if you intend to stay in short-term for a whole month [http://www.csfds.be Centre Sportif de la Foret de Soignes] might be the least expensive option. If you want to book a room there you have to do it through IRIDIA.<br />
* [http://www.bnb-brussels.be Bed &amp; Brussels] manages rooms in more than 100 guesthouses. Have a look and contact them if you are interested. If you book a room make sure that it is close to the university (Ixelles 1050 or Uccle 1180). '''Hint:''' Go to [http://www.maporama.com Maporama] and punch in the address of the guest house to see how far it is from ULB.<br />
* [http://rycx.be/bedbreakfast/en/ Rycx's family house] The guest house at Square Robert Goldschmidt, 50 - B-1050 Brussels, Belgium] should be quite good, inexpensive and very close to the university. They only have few rooms.<br />
* [http://www.brusselsdestination.be/en/index.html Brussels Destination] offers rooms, flats, and studios for stays of 4 weeks or longer. At the moment of writing this, the map offered by the site is often incorrect, so be sure to check the address given using a different map.<br />
<br />
== Long-term accommodation ==<br />
In case you do not already live in Brussels, one of the first and most important things to do obviously is to find an apartment. One option is to buy the magazine "Vlan" where you have lots of ads for flats and etc. You can as well visit the [http://www.vlan.be Vlan website], which is very good and publishes the announcements shortly after they are published in the magazine. You can try out [http://www.immoweb.be IMMOWEB.be] on which apartments are also advertised. Another great website full of ads for apartments and furniture is [http://www.expatriates.com/classifieds/bru/ Expats in Brussel].<br />
<br />
An alternative method is to simply walk around in the neighborhood you are interested in living in as the landlords hang out easy identifiable announcements. As this might not be a usual way to find accommodation in other countries it works in Belgium. There are a lot of signs put up and sometimes this is the only way in which apartments are advertised. Walking around is probably a bit more time consuming than finding a flat through the Vlan, but on the other side you get to know the area, and you are likely to find one of the apartments close to the University not advertised on the web. The signs read "A Louer" or "Te Huur", which translates to "for rent". There are lots of rooms and apartments for rent. They vary a lot in terms of quality and price, so you might have to spend some time to find something that suites your budget and your style.<br />
<br />
Most other students at IRIDIA live quite close to the university; choosing a place in the neighborhood is likely to improve your social life.<br />
<br />
In case you don't speak any French it is recommendable to ask a French speaker (e.g. at IRIDIA) to check the contract. Even though the probability is low that some landlord wants to cheat, it is always better to know what exactly is written in the contract!<br />
<br />
=== Renting an apartment ===<br />
Once you have found the property you want to rent, you need a lease (bail/kontract), an inventory (etat des lieux/plaatsbeschrijving), a security deposit, and to get the phone, electricity and gas reconnected.<br />
<br />
There is an element of Catch 22 here - there is a certain order to get things done that, at times, seems to be mutually exclusive.<br />
<br />
<br />
'''The lease'''<br />
<br />
Belgium has an odd system of a standard nine-year flexible lease, and an inflexible three-year lease. At first sight the three-year lease seems the most attractive to a newcomer whose time in the country is uncertain, but this is not necessarily the case.<br />
<br />
A three-year lease can be for any agreed period up to a maximum of three years. It fixes the rent for the period of the lease and commits the tenant to pay for the entire period of the lease. It can include a diplomatic clause (designed to indemnify the tenant if he wants to break the lease because he is leaving the country) but these have been nullified by the Belgian Courts in the past.<br />
<br />
It is thus better to opt for a nine-year lease, which can in fact be broken by giving three months notice. But if you leave in the first, second or third year, you will pay an indemnity of three, two and one month's rent respectively. From year four, there is no penalty for leaving.<br />
<br />
The monthly rent is fixed for nine years subject to the normal state-controlled annual indexation. The landlord can only give you notice if they intend to occupy the property personally, need to carry out major works (where major has a legal definition), or at the end of year three or year six, for no reason but subject to compensation to the tenant of nine or six month's rent respectively.<br />
<br />
For an apartment, the monthly outgoing may include an element of rent and a fixed amount of service charge. Usually the service charge is just a prepayment (provision pour charges/vooruitbetaling) and there will be an annual assessment of common charges for the property that you will share in.<br />
<br />
If you want to negotiate a better price, negotiate down the rental not the service charges! If there are things you want the landlord to correct before you move in, don't sign the lease until they have happened.<br />
<br />
<br />
'''The inventory'''<br />
<br />
The inventory (etat des lieux /plaatsbeschrijvin) is the source of more misery to tenants than any other legal document.<br />
<br />
Typically, the landlord's agent prepares a stunningly detailed list of the condition of the property complete with photographs. The tenant reads it or not and signs. At the end of the lease, the landlord's agent checks the property and finds an unreasonable amount of property damage.<br />
<br />
Expats have been charged for scratches in the bath that were there before they arrived, and for damp patches caused by the landlord's failure to repair a roof. That the cost of the damage often comes to about the level of the retained security deposit is a coincidence of course!<br />
<br />
It is bad enough to have someone who seems to be less than independent assessing costs against you, even more irritating is that you have to pay 50 percent of his bill. Some agents insist you sign a document agreeing to the fee and to accept his expertise before he starts. Don't do so.<br />
<br />
The way to avoid all such problems is simple. Select your own agent (expert immobilier/expert) to do the check-in and the check-out. That way both parties get a truly independent and fair assessment.<br />
<br />
<br />
'''The security deposit'''<br />
<br />
You will either need to pay around three months rental up front as a security deposit against tenant-effected damages, or to ask your bank for a guarantee.<br />
<br />
The latter option is basically a low-cost insurance policy sold to you by the bank which gets your salary as its means of security. It is typically the better option because a bad-faith landlord needs to prove to the bank that he deserves the guarantee.<br />
<br />
<br />
'''Home insurance'''<br />
<br />
Whether you own or rent your property, you need to get insurance. Almost all rental agreements in Belgium require the tenant to take out insurance on the rented property within 30 days of signing a lease. This insurance is required by the Belgian Civil Code, which holds a tenant responsible for any damage to the building unless proof can be given that it was not his/her fault.<br />
<br />
If you are renting, take your lease with you when you arrange your insurance. You are also responsible for providing cover against third party liability, but the owner is required to have a policy covering the property against earthquakes, lightning, fire, etc. If you are in furnished accommodation, you are required to take out insurance against damage to the landlord's furniture.<br />
<br />
Contents insurance is not compulsory but advisable. Remember that theft is not covered automatically in contents insurance: it is an option. Valuable personal items such as jewellery or cameras may require an all risks policy, which will cover you for damage or loss in or out of the home. Premiums on these for desirables such as laptop computers are high.<br />
<br />
<br />
=== Sharing an apartment/Renting a room ===<br />
<br />
Sharing an apartment or renting a room in some bigger building which features common space for every inhabitant has several advantages over living alone:<br />
<br />
* you'll be never be alone<br />
* it's cheaper<br />
* you will most certainly learn french a lot faster (or chinese, or...)<br />
* it will improve your social life<br />
* you can rely on the knowledge of your flatmates about Brussels<br />
<br />
Of course, it has several disadvantages:<br />
<br />
* you'll be never be alone<br />
* you have to share kitchen and bathroom, which isn't always nice<br />
<br />
It's certainly not for everyone, but it's a good and fun option. It heavily depends on your flatmates, so finding a good match is even more important than finding a nice appartment to share.<br />
<br />
''' Options '''<br />
<br />
If you want to share a house/apartment, you should know a few things. You basically have two options when you want to do this:<br />
<br />
# Rent a room in a bigger building (kind of student-dorm like) In Belgium single rooms to rent is referred to as a ''kot'' or simply ''chambre''. This is usually the cheapest option, as you can get one for less than 300 Euros including charges. The rooms are usually rented individually by the landlord. The major drawback is that you don't know much about the people you're going to share the common rooms with. Sometimes these rooms are simply part of a Belgian family household, so if you're seeking contact to local people this might be a good way. Usually a kot is rented by young people and erasmus students.<br />
# A ''colocation'' on the other hand is when several people rent a house/appartment together. You usually have more space and closer relationship to your flatmates. For this reason, you should choose them wisely. If your looking for a rich social life, this is the way to go. Colocations start around 300 Euros, but are usually around 450 Euros for a reasonably spaced room.<br />
<br />
''' Where to look '''<br />
<br />
In order to find a kot/colocation, you have several ways to look for it:<br />
* For a kot go to the l'office de logement in building F1 on campus Solbosch. On the first floor are two big boards full of offers. Note that these offers are usually made by landlords which are french-speaking. You can access a list here: http://wwwdev.ulb.ac.be/intranet/logements/scripts/logpub.php (for contact details you have to write the office or have a look at the board though).<br />
* Check the streets and the university buildings for handwritten ads.<br />
* http://www.xpats.com/clads/clads_display.php?Action=view&categorie=7&start=60<br />
* http://xsorbit29.com/users5/stageforum/index.php?board=4.0<br />
* http://bruxelles.vivastreet.be/annonces-colocation+bruxelles<br />
* http://www.languesvivantes.com/uk/roomsinbrussels.htm<br />
* http://www.recherche-colocation.com/ (commercial, you have to pay to get contact details)<br />
* http://www.appartager.be/ (commercial, you have to pay to get contact details)<br />
<br />
=== Furniture ===<br />
<br />
If you move into an unfurnished apartment, [http://www.ikea.be IKEA] is a good option. They have two branches in Brussels, the one in Zaventem is close to the airport. You can even rent a truck there to take your new furniture to your place (and it is not expensive).<br />
<br />
Another option is second-hand furniture. Brussels houses lots of expats coming and going, so often you can find good deals for second-hand items ranging from apartments, furniture and cars. [http://www.xpats.com XPATS.com] - a site for expatriates in Brussels and the surrounding area. Go to the [http://www.xpats.com/classifieds_main.shtml Classified] section and choose the http://www.xpats.com/clads/clads_display.php?Action=view&categorie=12 For sale section]. There is usually heaps of stuff for sale and many new ads are added daily.<br />
<br />
== Currency ==<br />
<br />
Belgium is in the eurozone, sharing a common currency with Austria, France, Germany, Greece, Ireland, Italy, Luxembourg, Spain, Portugal and the Netherlands.<br />
<br />
Of the old EU countries, Sweden, Denmark and the UK are the outsiders and many of the 10 new EU countries plan to adopt the euro when they are ready to do so, but not for a few years yet.<br />
<br />
Coins: 1 cent, 2 cents, 5 cents, 10 cents, 20 cents, 50 cents, 1 EUR, 2 EUR<br />
<br />
Notes: 5 EUR, 10 EUR, 20 EUR, 50 EUR, 100 EUR, 200 EUR, 500 EUR<br />
<br />
On one side of the coins is a European Union emblem showing a map of the eurozone surrounded by the 12 stars of the union. On the other side is a design specific to the country where it was minted.<br />
<br />
Euros from any of the 12 countries may be used anywhere in the EU. All euro notes are the same, regardless of which country they come from.<br />
<br />
=== Paying for goods and services ===<br />
<br />
<br />
'''Cash'''<br />
<br />
Cash dispensers are everywhere where there is a bank, and they all take Bancontact cards issued by local banks. But beware, you might have to wander around to find one that takes your Visa or MasterCard or other major credit and debit cards.<br />
<br />
<br />
'''Credit and Debit Cards'''<br />
<br />
Most types of credit card are widely accepted. If you get a standard Visa or Eurocard/MasterCard from a local bank, the standard option is for this to operate like a debit card, with the full balance taken from your account each month.<br />
<br />
A full service credit option is widely available on request.<br />
<br />
Diner's, American Express and other major international credit cards can also be obtained and used in Belgium.<br />
<br />
The most common card in Belgium is the Mister Cash-Bancontact card. It is linked to your current account, and is accepted in department stores, supermarkets, gas stations, and high street shops everywhere. It's a good idea to have one of these, as there are still many places in Belgium that don't accept alternatives.<br />
<br />
A Bancontact card with a PIN number will be issued when you open a Belgian bank account.<br />
<br />
<br />
'''Proton'''<br />
<br />
Belgium is a pioneer in a cashless society.<br />
<br />
The Proton card is actually a chip integrated into your Bancontact card and is like a rechargeable electronic purse.<br />
<br />
It is designed to pay for everyday items such as newspapers and cigarettes, as well as<br />
paying the butcher and the baker.<br />
<br />
You can even use it for the parking meter, or to fill up your car with petrol.<br />
<br />
This is how it works:<br />
<br />
Using your usual four-digit PIN code, you load the card with up to EUR 1,240 at a cash dispenser,and then go shopping.<br />
<br />
The shopkeeper enters the amount to be paid into the Proton terminal, and you put your Proton card into the terminal.<br />
<br />
When the amount to be paid appears on the screen, you simply press the OK button, and the payment is made.<br />
<br />
A word of caution: a lost card is like lost cash so choose the amount you load wisely.<br />
<br />
=== Bank account ===<br />
<br />
Getting a bank account is straight-forward. Simply choose a bank and set up an interview. Mrs. Laurence Schor (email: first name . second name @ing.be, phone number 02 639 65 46) is an excellent English speaker and very helpful. Make an appointment with her. She works for ING, which is one of the large banks in Belgium and they have a branch only ~400m from the university (Av. de l'Universite 11, 1050 Brussels). You may also open a bank account at the small ING branch on campus Solbosch. To open the bank account, you will need at least a passport (or ID card if you are from EU) and a document proving your relation with the university (e.g., a signed letter from your supervisor). You may need additional documents if you are from outside EU.<br />
<br />
Usually, banks can also help out with matters related to insurance of property etc.<br />
<br />
== Transportation ==<br />
<br />
Getting around Brussels by the public transport system is easy: The city sports a decent system of metros, busses and trams. The first thing to do when you arrive in Brussels is to get a map of the busses, trams and metros. You can get that in many places, e.g. at the Central Station, get one - it will be your best friend in the beginning. <br />
<br />
If you want to go straight to Université Libre de Bruxelles (ULB) from the Central Station you should take [http://www.stib.irisnet.be/FR/40000Fre/B/40071F.htm bus 71] (when you exit the Central Station the stop for 71 is just 40m up the street alongside a number of other stops). It runs fairly frequently - every 20 mins or so - from early morning to midnight.<br />
<br />
===Tickets===<br />
<br />
In buses and trams you can buy a one-trip ticket for 2 euro from the driver. They will allow you to take any means of urban, public transport for one hour. In metro stations you can also by 5 and 10 trip tickets in machines (11 euro for the 10 trips ticket), which work in the exact same way, but are cheaper. The tickets are called "Jump tickets". Once you have a ticket, it needs to be stamped by one of the orange machines located in every tram and bus (just remember to validate the ticket every time you get in, in case it's less than an hour from the previous validation, it will not consume a new ride but will stamp a transfer next to the previous one). If you use the metro, remember to stamp the ticket BEFORE entering the metro train (sometimes they have raids where tickets are checked and the cops doing that do not look friendly!)<br />
<br />
===Importing a car===<br />
<br />
====From outside the EU====<br />
The various steps in importing a car into Belgium from outside the European Union are lengthy and complicated. Even armed with the most current information from the official Belgian government website, you will almost certainly need the services of a broker or specialized agent. A good agent can help you with the importation of your car, conversion to Belgian specifications, conformity certificate, and technical inspection and licensing.<br />
<br />
<br />
A car imported into Belgium from outside the EU as part of a move of your personal and household effects can be exempt from customs duties and value-added tax if the following conditions are met:<br />
<br />
<br />
You resided outside the EU for at least 12 months before establishing residence in Belgium;<br />
<br />
You acquired the car abroad and drove it for at least six months before arrival;<br />
<br />
You paid sales tax in another country;<br />
<br />
You will retain the car for your personal use for at least 12 months following the date of import.<br />
<br />
<br />
The Belgian customs authorities require the following documents:<br />
<br />
Letter requesting exemption of customs duties and value-added tax;<br />
<br />
Invoice for the car;<br />
<br />
Certificate of title; <br />
<br />
Sales tax receipts; <br />
<br />
Certificate of insurance covering at least six months prior to importation; <br />
<br />
Proof of residence in a country outside the European Union for at least 12 months before departure; <br />
<br />
Proof of residence in Belgium and date of establishment;<br />
<br />
Shipping document for personal effects.<br />
<br />
<br />
For further information on import procedures, contact Belgian Customs:<br />
<br />
Ministere des Finances Service Douane or <br />
<br />
Ministerie van Financier Kantoor Douane <br />
<br />
Rue Picard 1-3 <br />
<br />
1210 Brussels <br />
<br />
Tel. 0800.147.95 (toll-free number in Dutch, English, French and German)<br />
<br />
<br />
Where import duty exemption is not extended, as in the case of a vehicle that has been owned less than six months, a customs duty of io percent and value-added tax of 21 percent of the market value of the car as determined by customs must be paid.<br />
<br />
====From within the EU====<br />
It is much easier to import a car into Belgium from another European Union country. Present the car to the Belgian customs authorities, along with a copy of your Belgian identity card, proof of purchase and previous registration. Value-added tax will have to be paid on new cars (less than six months old or driven less than 6,000 kilometers) but not on cars considered to be secondhand �?? over six months old and/or with more than 6,000 kilometers on the clock. In all EU member states, VAT on secondhand cars is always paid in the country where the vehicle was purchased, because it is included in the price.<br />
<br />
An imported car with valid foreign registration and license plates can be driven immediately upon arrival in Belgium for a maximum of six months. During this period, you must go through the formalities of registering your car with the Belgian authorities and, in the case of non-EU nationals, applying for a Belgian driving license.<br />
<br />
== Mobile phone ==<br />
<br />
There are several options for getting a mobile phone and/or a SIM card. There are three companies operating in Belgium: <br />
<br />
* [http://www.proximus.be Proximus] <br />
* [http://www.base.be Base] <br />
* [http://www.mobistar.be Mobistar]<br />
<br />
You can buy either a subscription where you pay a monthly fee and they'll send you a bill sized in accordance with your use. Alternatively, you can go for a prepaid card deal, where calls are usually a bit more expensive, but you do not have to lock yourself into a long-term contract. Moreover, you can walk straight into a store and five minutes later you got your own phone number. The prepaid cards can be recharged in tobacco shops and in any of the operator's braches.<br />
<br />
Getting a mobile phone number right away is a GOOD IDEA. It is especially useful for finding accommodation. The rumor has it that [http://www.base.be Base] has the less expensive deals at the moment.<br />
<br />
Make sure that your phone is not SIM-locked and that it works with the new card before leaving the store.<br />
<br />
== Registering at the local commune ==<br />
At some point you have to register at the city hall to get a residence permit. However, it's better to wait until you have found yourself some long-term accommodation before registering because they want to have your permanent address. So it's not possible to register until you have a permanent place to live. Officially you have to do it within 3 months of arrival in case you are from an EU member state.<br />
<br />
If you live in [http://www.elsene.irisnet.be/ the commune of Ixelles] you have to call the following number: 02.515.66.03, 21, 22 et 23. You can find the office time table to the following direct link of the [http://www.elsene.irisnet.be/site/fr/01officiel/servicescommun/population.htm#etrangers Bureau des etrangers]. If you speak basic French and you are an UE citizen, it´s likely that they will schedule an appointment with you in 2-3 months for the registration. All you have to say is your nationality and that you just arrived in Ixelles and you want to register. They will ask you your last name, your first name, your address in Ixelles and your telephone number.<br />
<br />
Some days or weeks later and before the appointment, a police man will come and visit you in your apartment to check that you are really living there (and your family members). Usually, if you are not there at that time, you just need to put your name in your mail box.<br />
<br />
You will usually get a residence permit valid for one year at the time, thus you might have to renew your permit every year. For renewing the permission, you have to go to Chausse d'Ixelles 124 to present: a) the confirmation of enrollment of the university, b) a proof of coverage by your health insurance, c) a photo and d) 7.50 EUR.<br />
<br />
=== Italians: registering at the AIRE ===<br />
Italians that are staying in Belgium more than 12 months must register at the [http://www.consbruxelles.esteri.it/Consolato_Bruxelles/Menu/I_Servizi/Per_i_cittadini/Anagrafe/ AIRE (Anagrafe degli Italiani Residenti all'Estero)]. You have to register within 90 days after your arrival, and in order to do that you have to go to the [http://www.consbruxelles.esteri.it/Consolato_Bruxelles/ Consolato d'Italia] in Rue de Livourne, 38. You can schedule an appointment online by clicking on [http://www.consbruxelles.esteri.it/Consolato_Bruxelles/Menu/In_linea_con_utente/Prenota_OnLine/ sportello unico -> prendere appuntamento]. You will need an Italian identity card and a Belgian document like the residence permit.<br />
<br />
== Health-care == <br />
In order to enroll in a health care plan you need contact a ''mutualité'' for instance [http://www.euromut.be Euromut]. Fill out the web form and they will send you the necessary documents.<br />
<br />
It take a while before you can become a member of a mutualité. However, once you are inscribed you can get any medical expenses reimbursed from the date on which you started at the university. Hence, in case something happens in between arrival and becoming a member of Euromut you are still covered.<br />
<br />
Normally Euromut will only provide you a basic, compulsory insurance and the coverage of such an insurance is far from complete. Therefore, it is a good and cheap option to buy additional coverage e.g. for hospitalization. You can do that either through Euromut or another mutualité. The rumor has it that the insurance through the University is the cheaper one. In order to get such an insurance you should contact the ULB Social Services (internal phone numbers: 3505, 3506, 3507) or simply go to their office in the V building on the third floor (right above the university book store on Av. Adolphe Buyl). You can try with English, but your milage may vary.<br />
<br />
<br />
<br />
=== The Belgian healtcare system ===<br />
You can be assured of the highest-quality medical care in Belgium, regarded as among the best healthcare systems in Europe.<br />
<br />
As in most countries, the system divides itself into state and private, though fees are payable in both, so you need to ensure that you are adequately covered through either the state insurance and/or private insurance.<br />
<br />
The advantages of the state mutuelle/mutualiteit scheme is that you can choose any doctor, clinic or hospital you like, in any location and without referral, according to your needs in much the same way as you can with private insurance.<br />
<br />
<br />
'''Doctors'''<br />
<br />
General practitioners can be found in private practices or attached to clinics and hospitals. You are free to consult or register with any you like; similarly with specialist consultants. It may be a decision based on location, language or recommendation.<br />
<br />
It's always worth speaking to neighbours or colleagues when you first arrive; everyone knows of a doctor, or has heard of one with a good reputation. Embassies usually keep lists of doctors who can work in your language, though it has to be said that most doctors have a good understanding of English. See for example the webpage "[http://ukinbelgium.fco.gov.uk/en/help-for-british-nationals/when-things-go-wrong/if-you-need-doctor if you need a doctor]" of the UK Embassy.<br />
<br />
When you first phone a doctor, check whether they are registered as national health service or private. Some are both, perhaps working at a hospital and also in their own private practice.<br />
<br />
One thing to remember when you go to a doctor '''take cash with you'''. Consultations usually end with a handing over of money and very few doctors offer payment by card of any type. If you have state social security, reimbursement rates are calculated and you pay the difference; if you are on a private scheme, or are uninsured, you pay the whole lot there and then. It's always worth checking fees before you book an appointment.<br />
<br />
<br />
'''Dentists'''<br />
<br />
The majority of dentists in Belgium are private, though there are those who accept part-payment on state insurance. Make it a priority to check when registering as the fee differentials can be huge. For any specialist work, such as crowns and bridges, the dentist may well ask how you will pay and offer you different quotations. In the big cities, Brussels in particular, there are international dentistry practices as well as Belgian.<br />
<br />
<br />
'''Hospitals'''<br />
<br />
As with general practitioners, you can arrange to see a specialist of your choice at any hospital. You can also walk into an emergency department for immediate treatment, though as in other countries, do not use this as a general practitioner replacement. It makes life a lot easier if you have your insurance card or other identifiable means of payment with you, though treatment will not be refused if you don't.<br />
<br />
<br />
'''Emergency treatment'''<br />
<br />
If you need to use the emergency 100 number an ambulance will arrive quickly and take you to the nearest emergency centre. Sometimes, a decision may be made to admit you to the best centre suited for your needs, for example, a specialist burns unit.<br />
<br />
<br />
'''Pharmacies'''<br />
<br />
Chemists are ubiquitous in Belgium, with the green cross sign everywhere. There is a rota system for chemists to open outside of usual hours and through the night. Lists are available from any pharmacy or check newspapers for those open at night in your area.<br />
<br />
<br />
'''Health insurance'''<br />
<br />
Contributions to the state health system are made by you and your employer, or by you alone if you are self-employed. Payments and benefits are administered by one of the mutelle/mutualiteit societies.<br />
<br />
You can choose one that best suits your needs. For example, some are more geared to the self-employed, while others may provide cover for alternative medicine. Once you are a paying member you receive your social security ID, or SIS, a microchip card which carries all your details.<br />
<br />
Hospitals and chemists will use these to calculate what you are entitled to and if there is any price difference for you to cover. As already explained, many doctors have not yet invested in the necessary technology for SIS cards in their surgeries.<br />
<br />
You may choose to cover yourself with private insurance, indeed many overseas salary packages offer this as a benefit. However, if you are living and working in Belgium, you will still need to subscribe to the state system and your private insurance becomes an addition rather than a replacement.<br />
<br />
If you are an EU national, the social security form E111 gives you rights to use the Belgian state system until you have organised an SIS card. You need to arrange for this form in your own country, not in Belgium.<br />
<br />
== Useful web sites ==<br />
<br />
=== Online maps ===<br />
<br />
Check the following sites for maps:<br />
<br />
* [http://www.maporama.com Maporama] - an international site with lots of cities and options. Includes a route planner as well. The most accurate so far.<br />
* [http://www.mappy.be Mappy] - a Belgian run site - type in an address or district and you get a zoomable map. <br />
* [http://www.viamichelin.com Via Michelin] a nice route planer and map finder. Not as many Brussels addresses are available as [http://www.mappy.be Mappy], but produces nice maps for print outs.<br />
<br />
=== Transportation web sites ===<br />
<br />
* [http://www.stib.be STIB] - The site of the company responsible for urban transport in Brussels. It contains [http://www.stib.irisnet.be/FR/40000F.htm time tables for busses trams and metros]. The site is only in French and Dutch. Time table is <i>"Horaires"</i> in French and <i>"Dienstregeling"</i> in Dutch.<br />
* [http://www.tec-wl.be Transport En Commun (TEC)] - Regional bus company. Their site is available in English.<br />
* [http://www.sncb.be SNCB] - Regional train company.<br />
<br />
=== Expatriate web sites ===<br />
These websites have various sections, communities and information related to being a foreigner in Belgium and Brussels in particular. Some have sections ranging from buy and sell to expat dating. Definitely worth checking out:<br />
<br />
* [http://www.xpats.com XPATS.com]<br />
* [http://www.expatsinbrussels.com ExpatsInBrussels]<br />
* [http://www.expatriates.com Expatriates]<br />
* [http://www.expatriate-online.com Expatriate-online]<br />
<br />
<br />
Mobile researchers in Europe have their own network of more than 200 �??service points�?? in 32 countries to draw on for all kinds of support when moving between countries: visas, work permits, taxation, social security, healthcare, pension rights, accommodation, recognition of qualifications, to day care, schooling, language courses, social life and culture, intellectual property rights, and more.<br />
* [http://europa.eu.int/eracareers/index_en.cfm?l1=4 European Network of Mobility Centres (ERA-MORE)]</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=TAM/Hardware&diff=6118
TAM/Hardware
2012-09-11T16:07:21Z
<p>Arne: New page: == Version 1 == === List of functions === * 8 doors (4 on each side) ** 3-color RGB led, digital trigger ** IR optical barrier, modulated * central uC (sets led state, polls optical barr...</p>
<hr />
<div>== Version 1 ==<br />
<br />
=== List of functions ===<br />
<br />
* 8 doors (4 on each side)<br />
** 3-color RGB led, digital trigger<br />
** IR optical barrier, modulated<br />
* central uC (sets led state, polls optical barriers)<br />
* USB com chip (translates between serial and USB)<br />
<br />
=== List of complex components ===<br />
<br />
See repository for datasheets.<br />
<br />
* 16x RGB LED<br />
* 8x IR LED<br />
* 8x IR phototransistor<br />
* 4x 959 shift register<br />
* 1x 555 timer<br />
* 1x Atmel ATmega168<br />
* 1x FT232RL USB-to-serial<br />
* 1x MC33269D-5.0 voltage regulator<br />
* 1x NDT2955 transistor for power source switching<br />
* 1x LM358D dual opamp for voltage regulation<br />
<br />
== Version 2 ==<br />
<br />
=== List of ideas ===<br />
<br />
* IR transmit/receive with robots in doors using Alex' IRcom library<br />
** needs analog inputs<br />
* use LED dimming (PVMs)<br />
* coded light barriers<br />
* better LEDs (better spectrum)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6117
Task Abstraction Module
2012-09-11T16:06:16Z
<p>Arne: /* Task Abstraction Module */</p>
<hr />
<div>[[TAM/Hardware]]</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Task_Abstraction_Module&diff=6116
Task Abstraction Module
2012-09-11T16:06:04Z
<p>Arne: New page: = Task Abstraction Module = TAM/Hardware</p>
<hr />
<div>= Task Abstraction Module =<br />
<br />
[[TAM/Hardware]]</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Pucks&diff=6115
E-Pucks
2012-09-11T16:05:35Z
<p>Arne: </p>
<hr />
<div>* General Info<br />
** [[E-Puck status]]<br />
** [[Get all the files you need]]<br />
<br />
* Setting up the infrastructure<br />
** [[How to connect to the robots via bluetooth and upload a file]]<br />
** [[How to compile the toolchain (pic30-gcc) | Install the toolchain]]<br />
** [[How to use the real e-pucks with Aseba]]<br />
*** [[Compile Aseba under Mac OS X]]<br />
<br />
* Sensors and Actuators (just notes and warnings, no basic usage)<br />
** [[Ground Sensors]]<br />
** [[Proximity Sensors]]<br />
** [[Wheels]]<br />
** [[Range and Bearing]]<br />
** [[Batteries]]<br />
<br />
* Other stuff<br />
** [[PaperEPucks | Paper for the ground of your arena]]<br />
** [[Troubleshooting]]<br />
** [[Task Abstraction Module|The TAMs -- Task Abstraction Modules]]</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Robots&diff=6113
Robots
2012-09-11T13:24:36Z
<p>Arne: /* List of Robots at IRIDIA */</p>
<hr />
<div>== List of Robots at IRIDIA ==<br />
<br />
* e-pucks<br />
** [[E-Pucks|All e-puck related information]] <br />
<br />
* sbots<br />
** [[SBOT_STATUS|sbot status information]] (failures, errors, ...)<br />
** [[SBOT_FAQ|sbot faq]] - Hardware FAQ<br />
** [http://www.swarm-bots.org The official SwarmBots webpage]<br />
** [http://lis.epfl.ch/internal/wiki/index.php?page=SwarmBots SBOT technical resource page] - Download the sbot API and the tool chain for cross-compilation. <br />
** [[Sbot Common Repository]] - Common version control area for all sbot development.<br />
** [[Sbot Common Interface]] - Write your controller once. Compile it for simulation and real robot.<br />
** [[OMiss - The ODE based simulator]] - Get started with the ODE based simulator<br />
** [[libsboteye]] - The sboteye api to use 'easily' the camera.<br />
<br />
* Swarmanoid<br />
** [http://www.swarmanoid.org The official Swarmanoid webpage]<br />
** [http://www.swarmanoid.org/wiki The official Swarmanoid Wiki page]<br />
** [http://iridia-dev.ulb.ac.be/ The ARGoS framework homepage] - Sourcecode, bugtracker, wiki<br />
** [http://iridia-dev.ulb.ac.be/projects/argos/trac/wiki/WikiStart ARGOS Wiki] - Latest info on the real robots here!<br />
<br />
== Access to the robots ==<br />
<br />
=== E-Pucks ===<br />
<br />
Bluetooth is the preferred access method for the e-pucks.<br />
<br />
==== Bluetooth ====<br />
<br />
(to be added)<br />
<br />
=== S-Bots ===<br />
<br />
Wifi is the preferred access method for the sbots.<br />
<br />
==== Wifi/WLAN ====<br />
<br />
===== In short: How to access? =====<br />
<br />
Drop the following aliases into ~/.ssh/config. Afterwards you are able to connect to the desired sbot simply by using 'ssh sbot8' for example, whereas the number is the same as on the sbots.<br />
<br />
#<br />
# SSH config for the IRIDIA sbots.<br />
# In order to connect to the ssh daemon on the sbots, you have to connect<br />
# to the sbot access point 'iridia-bots.ulb.ac.be' using a specific port.<br />
# The connection is then forwarded to port 22 on the requested sbot.<br />
# This definitions are aliases for easier access. The numbers are the<br />
# same as on the sbots.<br />
#<br />
host sbot3<br />
hostname iridia-bots.ulb.ac.be<br />
port 20322<br />
user root<br />
host sbot5<br />
hostname iridia-bots.ulb.ac.be<br />
port 20522<br />
user root<br />
host sbot6<br />
hostname iridia-bots.ulb.ac.be<br />
port 20622<br />
user root<br />
host sbot8<br />
hostname iridia-bots.ulb.ac.be<br />
port 20822<br />
user root<br />
host sbot9<br />
hostname iridia-bots.ulb.ac.be<br />
port 20922<br />
user root<br />
host sbot13<br />
hostname iridia-bots.ulb.ac.be<br />
port 21322<br />
user root<br />
host sbot14<br />
hostname iridia-bots.ulb.ac.be<br />
port 21422<br />
user root<br />
host sbot19<br />
hostname iridia-bots.ulb.ac.be<br />
port 21922<br />
user root<br />
host sbot22<br />
hostname iridia-bots.ulb.ac.be<br />
port 22222<br />
user root<br />
host sbot23<br />
hostname iridia-bots.ulb.ac.be<br />
port 22322<br />
user root<br />
host sbot24<br />
hostname iridia-bots.ulb.ac.be<br />
port 22422<br />
user root<br />
host sbot26<br />
hostname iridia-bots.ulb.ac.be<br />
port 22622<br />
user root<br />
host sbot27<br />
hostname iridia-bots.ulb.ac.be<br />
port 22722<br />
user root<br />
host sbot30<br />
hostname iridia-bots.ulb.ac.be<br />
port 23022<br />
user root<br />
host sbot32<br />
hostname iridia-bots.ulb.ac.be<br />
port 23222<br />
user root<br />
host sbot35<br />
hostname iridia-bots.ulb.ac.be<br />
port 23522<br />
user root<br />
host sbot36<br />
hostname iridia-bots.ulb.ac.be<br />
port 23622<br />
user root<br />
<br />
===== Technical Details =====<br />
<br />
The robots connect to a dedicated wireless network upon boot. They receive static private IP addresses from the access point. An individual robot can be accessed from the outside by accessing a special port on the access point. For example, the following can be used for accessing sbot8 using ssh:<br />
<br />
$ ssh -p 20822 root@iridia-bots.ulb.ac.be<br />
<br />
====== Wireless link ======<br />
<br />
Access point: iridia-bots.ulb.ac.be<br />
<br />
* SSID: sbot<br />
* WEP-104 key<br />
** ASCII: swarm-bots-ch<br />
** HEX: 737761726d2d626f74732d6368<br />
<br />
====== Ports ======<br />
<br />
Access to Ports < 100: port=[prefix][robotnum][port] <br />
<br />
Example: access to ssh (port 22) on sbot8: 20822<br />
<br />
* sbots: port prefix 2<br />
** port 20622: ssh access to sbot6<br />
** port 20822: ssh access to sbot8<br />
** port 20922: ssh access to sbot9<br />
** port 21322: ssh access to sbot13<br />
** port 21922: ssh access to sbot19<br />
** port 22222: ssh access to sbot22<br />
** port 22322: ssh access to sbot23<br />
** port 22422: ssh access to sbot24<br />
** port 22622: ssh access to sbot26<br />
** port 23022: ssh access to sbot30<br />
** port 23222: ssh access to sbot32<br />
** port 23522: ssh access to sbot35<br />
** port 23622: ssh access to sbot36<br />
<br />
====== Private IP Addresses ======<br />
<br />
Network: 192.168.1.0/24<br />
Gateway: 192.168.1.254<br />
<br />
* sbots: 192.168.1.[10+robotnum] (192.168.1.10-29)<br />
<br />
==== Serial Console ====<br />
<br />
I (Arne) made two serial console access cables. They are marked with '''sbot serial console access''' and should be flying around in the arena. Connect the small red plug to the sbot connector on the left of the power-on switch. It's slightly under the microphone board, so you might want to remove it (but you can do without). The program of choice for connect to the robot is minicom. Use<br />
<br />
$ minicom -s<br />
<br />
for setting it up. The connection details are: 115kbaud, 8N1, no flow control. Your port should be /dev/ttyS0 if you have a real serial port, or /dev/ttyUSB0 if you're using the USB-to-serial adapter (should be flying around in the arena as well). Then, use <br />
<br />
$ minicom -o<br />
<br />
to connect to the robot. Upon bootup, you should see the kernel messages. If you connected after booting, you<br />
might have to press <ENTER> one time to get a prompt. Please note that you might have to be root to use minicom.<br />
<br />
=== Swarmanoid robots ===<br />
<br />
See: http://iridia-dev.ulb.ac.be/projects/argos/trac/wiki/WikiStart#RealRobotInformation</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6103
E-Puck status
2012-07-27T12:34:33Z
<p>Arne: </p>
<hr />
<div>{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" | Status<br />
|- <br />
! scope="row" | 1328<br />
| Manu<br />
| Broken ground sensors (always return -1)<br />
|-<br />
! scope="row" | 1337<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1420<br />
| Manu<br />
| Weak left motor<br />
|-<br />
! scope="row" | 1421<br />
| Manu<br />
| Right wheel broken<br />
|-<br />
! scope="row" | 1423<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1424<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1425<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1426<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1428<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1432<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1441<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1442<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1443<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1465<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1474<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1299_#37<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1322_#38<br />
| Arne<br />
| Broken led #4<br />
|-<br />
! scope="row" | 1422_#55<br />
| Arne<br />
| OK<br />
|-<br />
|}<br />
<br />
<br />
<br />
Latest updates (add your signature here)<br />
<br />
* [[User:Arne|Arne]] 12:31, 27 July 2012 (UTC)<br />
* [[User:Manubrambi|Manubrambi]] 09:20, 19 October 2011 (UTC)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6102
E-Puck status
2012-07-27T12:31:59Z
<p>Arne: </p>
<hr />
<div>{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" | Status<br />
|- <br />
! scope="row" | 1328<br />
| Manu<br />
| Broken ground sensors (always return -1)<br />
|-<br />
! scope="row" | 1337<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1420<br />
| Manu<br />
| Weak left motor<br />
|-<br />
! scope="row" | 1421<br />
| Manu<br />
| Right wheel broken<br />
|-<br />
! scope="row" | 1423<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1424<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1425<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1426<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1428<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1432<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1441<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1442<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1443<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1465<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1474<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1299 - lin#37<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1322 - lin#38<br />
| Arne<br />
| Broken led #4<br />
|-<br />
! scope="row" | 1422 - lin#55<br />
| Arne<br />
| OK<br />
|-<br />
|}<br />
<br />
<br />
<br />
Latest updates (add your signature here)<br />
<br />
* [[User:Arne|Arne]] 12:31, 27 July 2012 (UTC)<br />
* [[User:Manubrambi|Manubrambi]] 09:20, 19 October 2011 (UTC)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6101
E-Puck status
2012-07-27T12:31:48Z
<p>Arne: </p>
<hr />
<div>{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" | Status<br />
|- <br />
! scope="row" | 1328<br />
| Manu<br />
| Broken ground sensors (always return -1)<br />
|-<br />
! scope="row" | 1337<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1420<br />
| Manu<br />
| Weak left motor<br />
|-<br />
! scope="row" | 1421<br />
| Manu<br />
| Right wheel broken<br />
|-<br />
! scope="row" | 1423<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1424<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1425<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1426<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1428<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1432<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1441<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1442<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1443<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1465<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1474<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1299 - lin#37<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1322 - lin#38<br />
| Arne<br />
| Broken led #4<br />
|-<br />
! scope="row" | 1422 - lin#55<br />
| Arne<br />
| OK<br />
|-<br />
|}<br />
<br />
<br />
<br />
Latest updates (add your signature here)<br />
<br />
* [[User:Arne|Arne]] 12:31, 27 July 2012 (UTC)<br />
* [[User:Manubrambi|Manubrambi]] 09:20, 19 October 2011 (UTC)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6100
E-Puck status
2012-07-27T12:31:32Z
<p>Arne: </p>
<hr />
<div>{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" | Status<br />
|- <br />
! scope="row" | 1328<br />
| Manu<br />
| Broken ground sensors (always return -1)<br />
|-<br />
! scope="row" | 1337<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1420<br />
| Manu<br />
| Weak left motor<br />
|-<br />
! scope="row" | 1421<br />
| Manu<br />
| Right wheel broken<br />
|-<br />
! scope="row" | 1423<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1424<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1425<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1426<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1428<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1432<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1441<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1442<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1443<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1465<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1474<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1299 - lin#37<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1322 - lin#38<br />
| Arne<br />
| Broken led #4<br />
|-<br />
! scope="row" | 1422 - lin#55<br />
| Arne<br />
| OK<br />
|-<br />
|}<br />
<br />
<br />
<br />
Latest updates (add your signature here)<br />
<br />
[[User:Arne|Arne]] 12:31, 27 July 2012 (UTC)<br />
--[[User:Manubrambi|Manubrambi]] 09:20, 19 October 2011 (UTC)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6099
E-Puck status
2012-07-27T12:30:45Z
<p>Arne: </p>
<hr />
<div>{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" | Status<br />
|- <br />
! scope="row" | 1328<br />
| Manu<br />
| Broken ground sensors (always return -1)<br />
|-<br />
! scope="row" | 1337<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1420<br />
| Manu<br />
| Weak left motor<br />
|-<br />
! scope="row" | 1421<br />
| Manu<br />
| Right wheel broken<br />
|-<br />
! scope="row" | 1423<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1424<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1425<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1426<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1428<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1432<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1441<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1442<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1443<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1465<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1474<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1299 - lin#37<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1322 - lin#38<br />
| Arne<br />
| Broken led #4<br />
|-<br />
! scope="row" | 1422 - lin#55<br />
| Arne<br />
| OK<br />
|-<br />
|}<br />
<br />
<br />
<br />
Latest updates (add your signature here)<br />
<br />
--[[User:Manubrambi|Manubrambi]] 09:20, 19 October 2011 (UTC)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6098
E-Puck status
2012-07-27T12:30:01Z
<p>Arne: </p>
<hr />
<div>{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" | Status<br />
|- <br />
! scope="row" | 1322<br />
| Manu<br />
| Broken led #4<br />
|-<br />
! scope="row" | 1328<br />
| Manu<br />
| Broken ground sensors (always return -1)<br />
|-<br />
! scope="row" | 1337<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1420<br />
| Manu<br />
| Weak left motor<br />
|-<br />
! scope="row" | 1421<br />
| Manu<br />
| Right wheel broken<br />
|-<br />
! scope="row" | 1423<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1424<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1425<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1426<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1428<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1432<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1441<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1442<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1443<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1465<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1474<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1299 - lin#37<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1322 - lin#38<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1422 - lin#55<br />
| Arne<br />
| OK<br />
|-<br />
|}<br />
<br />
<br />
<br />
Latest updates (add your signature here)<br />
<br />
--[[User:Manubrambi|Manubrambi]] 09:20, 19 October 2011 (UTC)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6097
E-Puck status
2012-07-27T12:29:13Z
<p>Arne: </p>
<hr />
<div>{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" | Status<br />
|- <br />
! scope="row" | 1322<br />
| Manu<br />
| Broken led #4<br />
|-<br />
! scope="row" | 1328<br />
| Manu<br />
| Broken ground sensors (always return -1)<br />
|-<br />
! scope="row" | 1337<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1420<br />
| Manu<br />
| Weak left motor<br />
|-<br />
! scope="row" | 1421<br />
| Manu<br />
| Right wheel broken<br />
|-<br />
! scope="row" | 1423<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1424<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1425<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1426<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1428<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1432<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1441<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1442<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1443<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1465<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1474<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1299 - linux #37<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1322 - linux #38<br />
| Arne<br />
| OK<br />
|-<br />
! scope="row" | 1422 - linux #55<br />
| Arne<br />
| OK<br />
|-<br />
|}<br />
<br />
<br />
<br />
Latest updates (add your signature here)<br />
<br />
--[[User:Manubrambi|Manubrambi]] 09:20, 19 October 2011 (UTC)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=E-Puck_status&diff=6096
E-Puck status
2012-07-27T12:28:47Z
<p>Arne: </p>
<hr />
<div>{| class="wikitable" style="text-align: center;"<br />
|+ E-Puck Status<br />
|-<br />
! scope="col" width="75" | ID <br />
! scope="col" width="100" | Last User <br />
! scope="col" | Status<br />
|- <br />
! scope="row" | 1322<br />
| Manu<br />
| Broken led #4<br />
|-<br />
! scope="row" | 1328<br />
| Manu<br />
| Broken ground sensors (always return -1)<br />
|-<br />
! scope="row" | 1337<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1420<br />
| Manu<br />
| Weak left motor<br />
|-<br />
! scope="row" | 1421<br />
| Manu<br />
| Right wheel broken<br />
|-<br />
! scope="row" | 1423<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1424<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1425<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1426<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1428<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1432<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1441<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1442<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1443<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1465<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1474<br />
| Manu<br />
| OK<br />
|-<br />
! scope="row" | 1299 - #37<br />
| Arne<br />
| OK<br />
! scope="row" | 1322 - #38<br />
| Arne<br />
| OK<br />
! scope="row" | 1422 - #55<br />
| Arne<br />
| OK<br />
|}<br />
<br />
<br />
<br />
Latest updates (add your signature here)<br />
<br />
--[[User:Manubrambi|Manubrambi]] 09:20, 19 October 2011 (UTC)</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Development_Server&diff=5561
Development Server
2011-04-05T12:44:49Z
<p>Arne: </p>
<hr />
<div>IRIDIA has a development server called "iridia-dev". The server<br />
provides the following services:<br />
<br />
* subversion repositories<br />
* git repositories<br />
* 'trac' environments for projects (wiki, bugtracker etc)<br />
* webpages for projects<br />
<br />
So if you have some software you would like to make open source, you<br />
can host this on the new server.<br />
<br />
== How to add a new subversion/git repository? ==<br />
<br />
Currently, you have to contact the server administrator for that. See [[Lab responsibilities]] to find out who's the current administrator of the server and the repositories.<br />
<br />
== How to access the subversion/git repositories? ==<br />
<br />
You should get a username and a password from the repositories administrator. Instead of<br />
accessing the server by ssh, you have to use https. The repository URL<br />
is the following:<br />
<br />
https://iridia-dev.ulb.ac.be/projects/%NAME%/{svn|git}<br />
<br />
For example, you can check out a project like this:<br />
<br />
svn co https://%USERNAME%@iridia-dev.ulb.ac.be/projects/%REPNAME%/svn<br />
<br />
<br />
[[Lab responsibilities|Contact the administrator]] if you have any problems/questions.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Main_Page&diff=5560
Main Page
2011-04-05T12:44:08Z
<p>Arne: /* Diverse Material */</p>
<hr />
<div><!-- BANNER ACROSS TOP OF PAGE --><br />
{| id="mp-topbanner" style="width:100%; background:#fcfcfc; margin-top:1.2em; border:1px solid #ccc;" align=center<br />
| style="width:56%; color:#000;" |<br />
{| style="width:100%; border:none; background:none;"<br />
| style="width:100%; text-align:center; white-space:nowrap; color:#000;" |<br />
<div style="font-size:162%; border:none; margin:0; padding:.1em; color:#000;">Welcome to [http://iridia.ulb.ac.be IRIDIA]'s wiki.</div><br />
[[Image:Iridia_logo_fancy.png|480px|center]]<br />
|}<br />
__NOTOC__<br />
<br />
<div id="Top"></div><br />
{| cellspacing="20" cellpadding="5" align=center <br />
|- <br />
<br />
|valign="top" width="50%" style="border:1px solid #cef2e0; background:#f5fffa;"|<br />
<h2 id="mp-tfa-h2" style="margin:3px; background:#cef2e0; font-size:120%; font-weight:bold; border:1px solid #a3bfb1; text-align:left; <br />
color:#000; padding:0.2em 0.4em;">[[#anc1 | Practicalities]]</h2><br />
* [[#anc1_1 | Moving and surviving in Brussels]] <br />
* [[#anc1_2 | Information for students]] <br />
* [[#anc1_3 | Useful informations]] (menu, pizza, etc...)<br />
* [[Lab responsibilities]] <br />
<br />
|valign="top" width="50%" style="border:1px solid #cedff2; background:#f5faff; vertical-align:top;"|<br />
<br />
<h2 id="mp-itn-h2" style="margin:3px; background:#cedff2; font-size:120%; font-weight:bold; border:1px solid #a3b0bf; text-align:left; color:#000; padding:0.2em 0.4em;">[[#anc2 | Research]]</h2><br />
<br />
* [[#anc2_1 | Robotics]] (S-Bots, E-pucks, Software, Links)<br />
<br />
* [[#anc2_2 | Optimization]] (Links)<br />
<br />
* [[IRIDIA Technical reports]]<br />
<br />
* [http://iridia.ulb.ac.be/seminars IRIDIA seminars]<br />
<br />
* [[#anc2_3 | Publications]] (how to publish IRIDIA reports, digital libraries)<br />
<br />
* [[#anc2_4 | Other seminars]] <br />
|- <br />
<br />
|valign="top" width="50%" style="border:1px solid #ddcef2; background:#faf5ff; vertical-align:top; color:#000;"|<br />
<h2 id="mp-tfp-h2" style="margin:3px; background:#ddcef2; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#000; padding:0.2em 0.4em">[[#anc3 | Infrastructure]]</h2><br />
<br />
* [[#anc3_1 | Hardware]] (configuration, backup, cluster, etc.)<br />
* [[#anc3_2 | Software]] (HOWTOs, homepage, etc.)<br />
* [[#material | Diverse material]] (Logos, graphic material, proceedings, etc.)<br />
<br />
|valign="top" width="50%" style="padding: 2px; border:1px solid #FFEDCC; color: #000000; background: #FFFCE6;"|<br />
<h2 id="mp-tfp-h2" style="margin:3px; background: #FFEDCC; font-size:120%; font-weight:bold; border:1px solid #cccccc; text-align:left; color:#000; padding:0.2em 0.4em">Weekly meetings</h2><br />
<br />
<!--* Alternate Thursdays at 15h00 : [[Robotics weekly meetings | Robotics meetings]]<br />
* Alternate Thursdays at 15h00 : [[Literature meetings | Literature meetings]] --><br />
* Wednesdays at 15h00 : [[Robotics weekly meetings | Robotics meetings]]<br />
* Thursdays at 10h30 : [[Administration weekly meetings | Administration weekly meeting]] <br />
* Thursdays at 11h00 : [[Optimization Group Meetings]]<br />
<br />
|}<br />
<br />
'''WARNING''' : we have changed the access policy of the wiki. To consult some sensitive information, you need a login.<br />
<br />
== Adding information ==<br />
<br />
A Wiki is an excellent tool to maintain dynamic information. If you want to add something to this Wiki feel very free contact the system administrator and get an account. It is straight-forward to add and change the information in MediaWiki. Simply press ''edit'' on the top of this page to see how it was done. If you create a link to a non-existing page within this Wiki you can create that page by following the link - of course you would need a login to do so!. Pictures and documents have to be [[Special:Upload|uploaded]] before they can be used on pages. All popular image formats are supported and pdf and ps documents are allowed .<br />
<br />
For more information on the Wiki mark-up language see [http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page Wikipedia's page about How to edit a page]. When you become good at it, you can make cool looking pages.<br />
<br />
<br />
== <div id="anc1">Practicalities</div> ==<br />
<br />
* <div id="anc1_1">'''Brussels'''</div><br />
** [[Moving to Brussels]] - What you need to know for moving to Brussels (housing, transport, health care, etc.).<br />
** [[Surviving in Brussels]] - French lessons, cultural events, etc.<br />
<br />
* <div id="anc1_2">'''Students'''</div><br />
** [[What you need to begin to work in IRIDIA]] - Resources to activate to work at IRIDIA.<br />
** [[For students visiting IRIDIA]] - Information for new students coming to IRIDIA.<br />
** [[University Administration]] - (IMPORTANT!) The what, the where and the how of navigating university bureaucracy - inscription, regulations etc.<br />
** [[Equivalence]] - Step by step explanations to request an equivalence of diplomas from Belgium.<br />
** [[Funding]] - Information on getting funding for projects, scholarships and unemployment benefits in Belgium once the Ph.D. grant runs out.<br />
** [[StudentsIRIDIA | Students]] - Information on students in IRIDIA.<br />
** [http://www.ulb.ac.be/dep/financier/perso-avantages/index.html Intranet for ULB employees] - Web site with list of benefit for being ULB employees <br />
** [[Insurance while travelling abroad]] - ULB's insurance<br />
** [https://iridia.ulb.ac.be/cgi-bin/mailman/listinfo/ IRIDIA mailing lists]<br />
** [[ECTS formation doctorale]] - a description of what you can use as ECTS for your DEA/formation doctorale<br />
<br />
* <div id="anc1_3">'''Useful information'''</div><br />
** [[Working late | Pizza]] - menu for the local pizza place, it is a good idea to order in advance. <br />
** [http://wwwdev.ulb.ac.be/restaurants/solbosch_s/r_pub.php3 Weekly menu at ULB restaurant]<br />
** [http://www.snack44.net/ Snack 44] Menu for sandwich bar dans l'avenue de l'Université<br />
<br />
* <div id="lab_responsibilities">'''Lab responsibilities'''</div><br />
** [[Lab responsibilities]] - list of labs responsibilities/tasks and who takes care of them.<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
== <div id="anc2">Research</div> ==<br />
<br />
<br />
=== <div id="anc2_1">Robotics</div> ===<br />
<br />
* [[Robots | Main page for robots at IRIDIA]] - List of robots, technical information, how to access<br />
* [[Arena time slots]] - Reserve arena time<br />
* [[E-Pucks]] - All the information on how to use the e-pucks are here<br />
<br />
* '''Software'''<br />
** [http://iridia.ulb.ac.be/~acampo/wiki/index.php/Tracker tracker] A program to track a single pattern in a sequence of pictures.<br />
** [http://iridia.ulb.ac.be/~acampo/wiki/index.php/Libdistortion libdistortion] a simple library to rectify camera images and extract easily real world coordinates of objects.<br />
<br />
* '''Links & news'''<br />
** [http://iridia.ulb.ac.be/comp2sys/ COMP2SYS project website]<br />
** [[Robot labs around the World]]<br />
** [http://robots.net Read more news on robots.net...]<br />
** [[Old news]]<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
=== <div id="anc2_2">Optimization</div> ===<br />
<br />
* '''Links & news'''<br />
** [http://www.informs.org/Resources/ INFORMS OR/MS]<br />
** [http://143.129.203.3/eume/php/eume.main.php EU/ME]<br />
** [http://www.prism.uvsq.fr/~vdc/ECCO/ ECCO]<br />
** [http://iridia.ulb.ac.be/sls-forum/ MH/SLS forum]<br />
* '''Metaheuristics'''<br />
** [http://www.aco-metaheuristic.org Ant Colony Optimization]<br />
** [http://iew3.technion.ac.il/CE/about.php Cross Entropy Method]<br />
** [http://evonet.lri.fr/ Evolutionary Computing]<br />
** [http://www.research.att.com/~mgcr/grasp/gannbib/gannbib.html GRASP]<br />
** [http://www.tabusearch.net/ Tabu Search]<br />
** [http://www.hydroteq.com/ Harmony Search]<br />
* '''Projects'''<br />
** [http://iridia.ulb.ac.be/comp2sys/ COMP2SYS]<br />
** [http://www.metaheuristics.org/ Metaheuristics Network]<br />
* '''Applications'''<br />
** [http://www.nada.kth.se/~viggo/wwwcompendium/ A compendium of NP optimization problems]<br />
** [http://www.tsp.gatech.edu/ TSP]<br />
** [http://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/ TSPLIB95] - A Traveling Salesman Problem Library<br />
** [http://www.seas.upenn.edu/qaplib/ QAPLIB] - A Quadratic Assignment Problem Library<br />
** [http://people.brunel.ac.uk/~mastjjb/jeb/info.html OR-Library]<br />
** [http://iridia.ulb.ac.be/~manuel/tsptw-instances Benchmark Instances for the Travelling Salesman Problem with Time Windows (TSPTW)]<br />
** [[Concorde]]<br />
* '''Experimental Analysis and Statistics'''<br />
** [http://www.r-project.org/ R project]<br />
** [[Tutorials_and_links_about_C%2C_R%2C_LateX_and_bash_(unix)#R | Tutorials and links about R]]<br />
** [http://www.statsoft.com/textbook/stathome.html Electronic Statistics Textbook. StatSoft, Inc. (2006)]<br />
** [http://www.itl.nist.gov/div898/handbook/ NIST/SEMATECH e-Handbook of Statistical Methods]<br />
**[http://www.keithbower.com/datasets/Audio%20Recordings.htm Videos on Statistical Concepts]<br />
* '''Software Development'''<br />
** [http://gcc.gnu.org/c99status.html C99 standard and use GCC compiler tools] - Suggested compiler<br />
** [http://www.gnu.org/prep/standards/standards.pdf GNU Coding Standards] - Suggested coding style guidelines<br />
** [http://www.gnu.org/software/gsl/ GSL] - GNU Scientific Library<br />
** [http://subversion.tigris.org/ Subversion] - Suggested version control tool (see the page on the IRIDIA [[Development Server]] how to use it inside the lab)<br />
** [http://www.stack.nl/~dimitri/doxygen/ Doxygen] - Suggested documentation tool for source code<br />
<center>[[#Top | Back to top]]</center><br />
<br />
=== Generic Tutorials and Links ===<br />
* [[Tutorials and links about C, R, LateX and bash (unix)]]<br />
<br />
=== Neural Networks ===<br />
* [[Neural Network Tutorials]]<br />
<br />
=== <div id="anc2_3">Publications</div> ===<br />
<br />
* [[IRIDIA Technical reports]] - Information on publishing a technical report and LaTeX package(s).<br />
* [[Access to Digital Libraries]] - Which on-line papers archive we have access from IRIDIA network. <br />
* [[Iridia Supplementary Information Instructions page]] - Information on HOW TO use the Iridia Supplementary Information page.<br />
* [[Write Better English]] - Basic pointers on how to raise the level of english in your paper.<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
<br />
<br />
== <div id="anc3">Infrastructure</div> ==<br />
<br />
=== <div id="anc3_1">'''Hardware'''</div> ===<br />
* [[Workstation configuration]] - How to setup your personal workstation and laptop, printers, etc.<br />
* [[Backup Server]] - How to use the backup server of IRIDIA<br />
* [[Development Server]] - How to use the IRIDIA development server and how to use subversion repositories<br />
* IRIDIA Cluster: See the [http://majorana.ulb.ac.be/wordpress/ Cluster Website] for usage information, tips and updates.<br />
* [[Using the IRIDIA Experimental room]] - All you need to know to easily run real experiments.<br />
<br />
=== <div id="anc3_2">'''Software'''</div> ===<br />
* [[Creating your own home page]] - How to create your own home.<br />
* See all [[Software HOWTOs]]<br />
* Suggested software for [[Workstation_configuration#For_Mac_OS_X_users | Mac OS X]] users<br />
* List of [[Available_commercial_software | commercial software]] we have in IRIDIA<br />
* Howto create a [[howto_create_new_svn_repos | new svn repository ]] on the iridia server<br />
<br />
=== <div id="material">'''Diverse Material'''</div> ===<br />
* [[Logos]]<br />
* [https://iridia-dev.ulb.ac.be/projects/material/svn SVN repository of graphical material] (for access see [[Development Server]])<br />
* [[ProceedingsRepository| Repository of Proceedings]]<br />
<center>[[#Top | Back to top]]</center></div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Main_Page&diff=5559
Main Page
2011-04-04T10:28:00Z
<p>Arne: /* Diverse Material */</p>
<hr />
<div><!-- BANNER ACROSS TOP OF PAGE --><br />
{| id="mp-topbanner" style="width:100%; background:#fcfcfc; margin-top:1.2em; border:1px solid #ccc;" align=center<br />
| style="width:56%; color:#000;" |<br />
{| style="width:100%; border:none; background:none;"<br />
| style="width:100%; text-align:center; white-space:nowrap; color:#000;" |<br />
<div style="font-size:162%; border:none; margin:0; padding:.1em; color:#000;">Welcome to [http://iridia.ulb.ac.be IRIDIA]'s wiki.</div><br />
[[Image:Iridia_logo_fancy.png|480px|center]]<br />
|}<br />
__NOTOC__<br />
<br />
<div id="Top"></div><br />
{| cellspacing="20" cellpadding="5" align=center <br />
|- <br />
<br />
|valign="top" width="50%" style="border:1px solid #cef2e0; background:#f5fffa;"|<br />
<h2 id="mp-tfa-h2" style="margin:3px; background:#cef2e0; font-size:120%; font-weight:bold; border:1px solid #a3bfb1; text-align:left; <br />
color:#000; padding:0.2em 0.4em;">[[#anc1 | Practicalities]]</h2><br />
* [[#anc1_1 | Moving and surviving in Brussels]] <br />
* [[#anc1_2 | Information for students]] <br />
* [[#anc1_3 | Useful informations]] (menu, pizza, etc...)<br />
* [[Lab responsibilities]] <br />
<br />
|valign="top" width="50%" style="border:1px solid #cedff2; background:#f5faff; vertical-align:top;"|<br />
<br />
<h2 id="mp-itn-h2" style="margin:3px; background:#cedff2; font-size:120%; font-weight:bold; border:1px solid #a3b0bf; text-align:left; color:#000; padding:0.2em 0.4em;">[[#anc2 | Research]]</h2><br />
<br />
* [[#anc2_1 | Robotics]] (S-Bots, E-pucks, Software, Links)<br />
<br />
* [[#anc2_2 | Optimization]] (Links)<br />
<br />
* [[IRIDIA Technical reports]]<br />
<br />
* [http://iridia.ulb.ac.be/seminars IRIDIA seminars]<br />
<br />
* [[#anc2_3 | Publications]] (how to publish IRIDIA reports, digital libraries)<br />
<br />
* [[#anc2_4 | Other seminars]] <br />
|- <br />
<br />
|valign="top" width="50%" style="border:1px solid #ddcef2; background:#faf5ff; vertical-align:top; color:#000;"|<br />
<h2 id="mp-tfp-h2" style="margin:3px; background:#ddcef2; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#000; padding:0.2em 0.4em">[[#anc3 | Infrastructure]]</h2><br />
<br />
* [[#anc3_1 | Hardware]] (configuration, backup, cluster, etc.)<br />
* [[#anc3_2 | Software]] (HOWTOs, homepage, etc.)<br />
* [[#material | Diverse material]] (Logos, graphic material, proceedings, etc.)<br />
<br />
|valign="top" width="50%" style="padding: 2px; border:1px solid #FFEDCC; color: #000000; background: #FFFCE6;"|<br />
<h2 id="mp-tfp-h2" style="margin:3px; background: #FFEDCC; font-size:120%; font-weight:bold; border:1px solid #cccccc; text-align:left; color:#000; padding:0.2em 0.4em">Weekly meetings</h2><br />
<br />
<!--* Alternate Thursdays at 15h00 : [[Robotics weekly meetings | Robotics meetings]]<br />
* Alternate Thursdays at 15h00 : [[Literature meetings | Literature meetings]] --><br />
* Wednesdays at 15h00 : [[Robotics weekly meetings | Robotics meetings]]<br />
* Thursdays at 10h30 : [[Administration weekly meetings | Administration weekly meeting]] <br />
* Thursdays at 11h00 : [[Optimization Group Meetings]]<br />
<br />
|}<br />
<br />
'''WARNING''' : we have changed the access policy of the wiki. To consult some sensitive information, you need a login.<br />
<br />
== Adding information ==<br />
<br />
A Wiki is an excellent tool to maintain dynamic information. If you want to add something to this Wiki feel very free contact the system administrator and get an account. It is straight-forward to add and change the information in MediaWiki. Simply press ''edit'' on the top of this page to see how it was done. If you create a link to a non-existing page within this Wiki you can create that page by following the link - of course you would need a login to do so!. Pictures and documents have to be [[Special:Upload|uploaded]] before they can be used on pages. All popular image formats are supported and pdf and ps documents are allowed .<br />
<br />
For more information on the Wiki mark-up language see [http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page Wikipedia's page about How to edit a page]. When you become good at it, you can make cool looking pages.<br />
<br />
<br />
== <div id="anc1">Practicalities</div> ==<br />
<br />
* <div id="anc1_1">'''Brussels'''</div><br />
** [[Moving to Brussels]] - What you need to know for moving to Brussels (housing, transport, health care, etc.).<br />
** [[Surviving in Brussels]] - French lessons, cultural events, etc.<br />
<br />
* <div id="anc1_2">'''Students'''</div><br />
** [[What you need to begin to work in IRIDIA]] - Resources to activate to work at IRIDIA.<br />
** [[For students visiting IRIDIA]] - Information for new students coming to IRIDIA.<br />
** [[University Administration]] - (IMPORTANT!) The what, the where and the how of navigating university bureaucracy - inscription, regulations etc.<br />
** [[Equivalence]] - Step by step explanations to request an equivalence of diplomas from Belgium.<br />
** [[Funding]] - Information on getting funding for projects, scholarships and unemployment benefits in Belgium once the Ph.D. grant runs out.<br />
** [[StudentsIRIDIA | Students]] - Information on students in IRIDIA.<br />
** [http://www.ulb.ac.be/dep/financier/perso-avantages/index.html Intranet for ULB employees] - Web site with list of benefit for being ULB employees <br />
** [[Insurance while travelling abroad]] - ULB's insurance<br />
** [https://iridia.ulb.ac.be/cgi-bin/mailman/listinfo/ IRIDIA mailing lists]<br />
** [[ECTS formation doctorale]] - a description of what you can use as ECTS for your DEA/formation doctorale<br />
<br />
* <div id="anc1_3">'''Useful information'''</div><br />
** [[Working late | Pizza]] - menu for the local pizza place, it is a good idea to order in advance. <br />
** [http://wwwdev.ulb.ac.be/restaurants/solbosch_s/r_pub.php3 Weekly menu at ULB restaurant]<br />
** [http://www.snack44.net/ Snack 44] Menu for sandwich bar dans l'avenue de l'Université<br />
<br />
* <div id="lab_responsibilities">'''Lab responsibilities'''</div><br />
** [[Lab responsibilities]] - list of labs responsibilities/tasks and who takes care of them.<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
== <div id="anc2">Research</div> ==<br />
<br />
<br />
=== <div id="anc2_1">Robotics</div> ===<br />
<br />
* [[Robots | Main page for robots at IRIDIA]] - List of robots, technical information, how to access<br />
* [[Arena time slots]] - Reserve arena time<br />
* [[E-Pucks]] - All the information on how to use the e-pucks are here<br />
<br />
* '''Software'''<br />
** [http://iridia.ulb.ac.be/~acampo/wiki/index.php/Tracker tracker] A program to track a single pattern in a sequence of pictures.<br />
** [http://iridia.ulb.ac.be/~acampo/wiki/index.php/Libdistortion libdistortion] a simple library to rectify camera images and extract easily real world coordinates of objects.<br />
<br />
* '''Links & news'''<br />
** [http://iridia.ulb.ac.be/comp2sys/ COMP2SYS project website]<br />
** [[Robot labs around the World]]<br />
** [http://robots.net Read more news on robots.net...]<br />
** [[Old news]]<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
=== <div id="anc2_2">Optimization</div> ===<br />
<br />
* '''Links & news'''<br />
** [http://www.informs.org/Resources/ INFORMS OR/MS]<br />
** [http://143.129.203.3/eume/php/eume.main.php EU/ME]<br />
** [http://www.prism.uvsq.fr/~vdc/ECCO/ ECCO]<br />
** [http://iridia.ulb.ac.be/sls-forum/ MH/SLS forum]<br />
* '''Metaheuristics'''<br />
** [http://www.aco-metaheuristic.org Ant Colony Optimization]<br />
** [http://iew3.technion.ac.il/CE/about.php Cross Entropy Method]<br />
** [http://evonet.lri.fr/ Evolutionary Computing]<br />
** [http://www.research.att.com/~mgcr/grasp/gannbib/gannbib.html GRASP]<br />
** [http://www.tabusearch.net/ Tabu Search]<br />
** [http://www.hydroteq.com/ Harmony Search]<br />
* '''Projects'''<br />
** [http://iridia.ulb.ac.be/comp2sys/ COMP2SYS]<br />
** [http://www.metaheuristics.org/ Metaheuristics Network]<br />
* '''Applications'''<br />
** [http://www.nada.kth.se/~viggo/wwwcompendium/ A compendium of NP optimization problems]<br />
** [http://www.tsp.gatech.edu/ TSP]<br />
** [http://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/ TSPLIB95] - A Traveling Salesman Problem Library<br />
** [http://www.seas.upenn.edu/qaplib/ QAPLIB] - A Quadratic Assignment Problem Library<br />
** [http://people.brunel.ac.uk/~mastjjb/jeb/info.html OR-Library]<br />
** [http://iridia.ulb.ac.be/~manuel/tsptw-instances Benchmark Instances for the Travelling Salesman Problem with Time Windows (TSPTW)]<br />
** [[Concorde]]<br />
* '''Experimental Analysis and Statistics'''<br />
** [http://www.r-project.org/ R project]<br />
** [[Tutorials_and_links_about_C%2C_R%2C_LateX_and_bash_(unix)#R | Tutorials and links about R]]<br />
** [http://www.statsoft.com/textbook/stathome.html Electronic Statistics Textbook. StatSoft, Inc. (2006)]<br />
** [http://www.itl.nist.gov/div898/handbook/ NIST/SEMATECH e-Handbook of Statistical Methods]<br />
**[http://www.keithbower.com/datasets/Audio%20Recordings.htm Videos on Statistical Concepts]<br />
* '''Software Development'''<br />
** [http://gcc.gnu.org/c99status.html C99 standard and use GCC compiler tools] - Suggested compiler<br />
** [http://www.gnu.org/prep/standards/standards.pdf GNU Coding Standards] - Suggested coding style guidelines<br />
** [http://www.gnu.org/software/gsl/ GSL] - GNU Scientific Library<br />
** [http://subversion.tigris.org/ Subversion] - Suggested version control tool (see the page on the IRIDIA [[Development Server]] how to use it inside the lab)<br />
** [http://www.stack.nl/~dimitri/doxygen/ Doxygen] - Suggested documentation tool for source code<br />
<center>[[#Top | Back to top]]</center><br />
<br />
=== Generic Tutorials and Links ===<br />
* [[Tutorials and links about C, R, LateX and bash (unix)]]<br />
<br />
=== Neural Networks ===<br />
* [[Neural Network Tutorials]]<br />
<br />
=== <div id="anc2_3">Publications</div> ===<br />
<br />
* [[IRIDIA Technical reports]] - Information on publishing a technical report and LaTeX package(s).<br />
* [[Access to Digital Libraries]] - Which on-line papers archive we have access from IRIDIA network. <br />
* [[Iridia Supplementary Information Instructions page]] - Information on HOW TO use the Iridia Supplementary Information page.<br />
* [[Write Better English]] - Basic pointers on how to raise the level of english in your paper.<br />
<br />
<center>[[#Top | Back to top]]</center><br />
<br />
<br />
<br />
== <div id="anc3">Infrastructure</div> ==<br />
<br />
=== <div id="anc3_1">'''Hardware'''</div> ===<br />
* [[Workstation configuration]] - How to setup your personal workstation and laptop, printers, etc.<br />
* [[Backup Server]] - How to use the backup server of IRIDIA<br />
* [[Development Server]] - How to use the IRIDIA development server and how to use subversion repositories<br />
* IRIDIA Cluster: See the [http://majorana.ulb.ac.be/wordpress/ Cluster Website] for usage information, tips and updates.<br />
* [[Using the IRIDIA Experimental room]] - All you need to know to easily run real experiments.<br />
<br />
=== <div id="anc3_2">'''Software'''</div> ===<br />
* [[Creating your own home page]] - How to create your own home.<br />
* See all [[Software HOWTOs]]<br />
* Suggested software for [[Workstation_configuration#For_Mac_OS_X_users | Mac OS X]] users<br />
* List of [[Available_commercial_software | commercial software]] we have in IRIDIA<br />
* Howto create a [[howto_create_new_svn_repos | new svn repository ]] on the iridia server<br />
<br />
=== <div id="material">'''Diverse Material'''</div> ===<br />
* [[Logos]]<br />
* [https://iridia-dev.ulb.ac.be/projects/iridia_logos/svn SVN repository of graphical material] (for access see [[Development Server]])<br />
* [[ProceedingsRepository| Repository of Proceedings]]<br />
<center>[[#Top | Back to top]]</center></div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=IRIDIA_Technical_reports&diff=5498
IRIDIA Technical reports
2010-05-12T11:09:37Z
<p>Arne: /* How to cite an IRIDIA technical report? */</p>
<hr />
<div>[http://iridia.ulb.ac.be/IridiaTrSeries The IRIDIA -- Technical Report Series] is a series of reports published<br />
on the web by IRIDIA. The series is officially registered and has an<br />
ISSN number: 1781-3794.<br />
<br />
<br />
== What is a suitable technical report? ==<br />
<br />
You should consider registering as a technical report any scientific<br />
or technical document that you wish to share with other researchers at<br />
IRIDIA or elsewhere. Good examples are: <br />
<br />
<ol><br />
<li> a scientific paper that you have submitted for publication in a<br />
journal or in the proceedings of a conference (IRIDIA researchers are <br />
STRONGLY invited to submit as technical report, at the time of submission, <br />
all conference or journal papers they write).</li><br />
<br />
<li> a scientific work that you have published somewhere. Please<br />
notice that there might be some copyright issues!!! In any case,<br />
you should be aware that the copyright notice of the technical<br />
report goes like this:<br />
<br />
<pre><br />
The authors take full responsibility for any copyright<br />
breaches that may result from publication of this paper in<br />
the IRIDIA -- Technical Report Series. IRIDIA is not<br />
responsible for any use that might be made of data appearing<br />
in this publication.<br />
</pre><br />
</li><br />
<br />
<li> the dirty details of an algorithm that no scientific journal<br />
would ever wish to publish.</li><br />
<br />
<li> the whole set of results of an experimental analysis with all<br />
plots and all tables.</li><br />
<br />
<li> the manual of a computer program that you have written.</li> <br />
</ol><br />
<br />
Note that not only the works that are<br />
submitted and/or published can be registered as technical reports.<br />
<br />
You should consider a report registered in the [http://iridia.ulb.ac.be/IridiaTrSeries IRIDIA -- Technical Report Series] as a publication in itself.<br />
<br />
<br />
== How to cite an IRIDIA technical report? ==<br />
<br />
Here's an example:<br />
<pre><br />
@TechReport{BirLopBru2005:IridiaTrCover,<br />
author = {M. Birattari and M. L{\'o}pez-Ib{\'a}{\~n}ez and A. Brutschy },<br />
title = "The {IridiaTrCover} package for \LaTeX:<br />
How to typeset documents for the <br />
IRIDIA -- Technical Report Series",<br />
institution = {IRIDIA, Universit\'e Libre de Bruxelles},<br />
year = 2005,<br />
number = {TR/IRIDIA/2005-006},<br />
address = {Brussels, Belgium},<br />
}<br />
</pre><br />
<br />
== How to register a technical report? ==<br />
<br />
If you have a scientific or technical document that you think fits<br />
into the description given in the above section [[#What is a suitable technical report?]], you might consider registering it in the IRIDIA --<br />
Technical Report Series. This is the procedure you should follow:<br />
<br />
<ol><br />
<li> Double check that your document is indeed suitable for being<br />
registered in the IRIDIA -- Technical Report Series! If you are a<br />
Ph.D. student, check with your supervisor.</li><br />
<br />
<li> Typeset the document using the [[#Where to find the LaTeX IridiaTrCover package? | LaTeX IridiaTrCover package]].</li><br />
<br />
<li> Give Muriel the title of the document and the list of the<br />
authors. She will give you a technical report number and a date.<br />
The date will be something like "MONTH YEAR" where MONTH and YEAR<br />
are respectively the month and the year in which the technical<br />
report number is assigned to your document.</li><br />
<br />
<li> Include number and date in your document. See the documentation <br />
of the [[#Where to find the LaTeX IridiaTrCover package? | LaTeX IridiaTrCover package]] <br />
to learn how to do this.</li><br />
<br />
<li> Give Muriel a printed copy of the technical report and send the<br />
PDF file to the email address <br />
[mailto:techrep@iridia.ulb.ac.be <techrep@iridia.ulb.ac.be>].</li> <br />
</ol><br />
<br />
Muriel will then announce the new technical report on the internal<br />
mailing list of IRIDIA, and the report will be published on the web.<br />
<br />
IMPORTANT: Steps 3 and 5 should be performed with no delay in between!<br />
<br />
<ul><br />
<li> '''DO NOT ask for a technical report date and number unless the'''<br />
'''document you want to register is already written, well formatted and'''<br />
'''ready to be distributed.'''</li><br />
<br />
<li> '''DO NOT ask to register your technical report with a date that is'''<br />
'''not the one in which you indeed register it.'''</li><br />
</ul><br />
<br />
<br />
== How to submit a revised version of a technical report? ==<br />
<br />
Whenever you feel like submitting a revised version of a technical<br />
report of yours, just give a printed copy of the new version to Muriel<br />
and send the PDF file to the email address <br />
[mailto:techrep@iridia.ulb.ac.be <techrep@iridia.ulb.ac.be>].<br />
The new revision will be published on the web.<br />
<br />
A revised version must contain a "revision history" on the copyright<br />
page. Please read [[#Numbering of the IRIDIA -- Technical Report Series]] to understand what a revision history is. You<br />
should also have a look at the documentation of the [[#Where to find the LaTeX IridiaTrCover package? | LaTeX IridiaTrCover package]].<br />
<br />
<br />
== Numbering of the IRIDIA -- Technical Report Series ==<br />
<br />
The number of a technical report is composed by the string<br />
"TR/IRIDIA/" followed by the year (4 digits), a hyphen and then a<br />
progressive number (3 digits, possibly left-padded with zeros).<br />
The first technical report of year XXXX gets the number<br />
TR/IRIDIA/XXXX-001, the second TR/IRIDIA/XXXX-002, and so on.<br />
<br />
This is the number that appears on the cover of a technical report<br />
together with the date.<br />
<br />
A technical report might be ''revised''. The first version of a<br />
technical report is revision number 001. Revision numbers are made of<br />
3 digits, possibly left-padded with zeros.<br />
<br />
If you wish to refer to revision ZZZ of technical report YYY<br />
registered in year XXXX, the number you should use is<br />
"TR/IRIDIA/XXXX-YYY.ZZZ". Remember the zero-padding!!!<br />
<br />
In general, TR/IRIDIA/XXXX-YYY refers to the most recent revision<br />
available. When you cite a technical report, do not include the<br />
revision number. The revision number should be included only if you<br />
wish to refer to a specific revision or if you wish to point out<br />
differences between revisions---e.g., "revision TR/IRIDIA/XXXX-YYY.002<br />
contained a stupid mistake that has been corrected in following<br />
revisions".<br />
<br />
In any case, the cover does not report the revision number, and the<br />
date is always the one of the first revision, i.e., the version<br />
originally submitted.<br />
<br />
The revision history appears on the copyright page. A technical<br />
report that is a revision of a previously submitted one must always<br />
feature the revision history on the copyright page.<br />
<br />
A technical report is uniquely identified by its number. So a new<br />
revision can have a different title and also different authors---e.g.,<br />
different order, one author added, one removed, etc.<br />
<br />
Anyway, if the title and/or the author list changes and/or if<br />
the technical report undergoes really MAJOR-MAJOR-MAJOR modifications,<br />
please submit a new technical report.<br />
<br />
<!-- This is a bit confusing and unnecessary for most of the people. I leave it here just for the sake of completeness.<br />
Please notice that the numbering conventions adopted for the IRIDIA --<br />
Technical Report Series let us register 999 revisions of the same<br />
technical report and let us write 999 new technical reports per year<br />
till Dec 31, 9999. After that day some new set of conventions should<br />
be designed. I suggest the trivial extension: writing the year with 5<br />
digits. If you have a better idea, please let me know by dropping a<br />
line to [mailto:mbiro@ulb.ac.be <mbiro@ulb.ac.be>]. <br />
Anyway, I don't think that discussing the<br />
conventions to be adopted starting from Jan 1, 10000 should be a<br />
priority, at least for the next couple of months. :)<br />
--><br />
<br />
<br />
== File name conventions ==<br />
<br />
The PDF file of a technical report should have a name that matches the<br />
following pattern: IridiaTrXXXX-YYYrZZZ.pdf where XXXX is the year,<br />
YYY is the number, and ZZZ is the revision. Remember zero-padding<br />
number and revision! The original version is the very first revision and, hence, it contains the revision number 001 in its name.<br />
<br />
If you submit a technical report (very first version)<br />
and Muriel gave you number TR/IRIDIA/XXXX-YYY, you should send to the<br />
email address [mailto:techrep@iridia.ulb.ac.be <techrep@iridia.ulb.ac.be>]<br />
a PDF file called IridiaTrXXXX-YYYr001.pdf (include the revision number!). <br />
If you revise the report, the PDF of the revised version will be called<br />
IridiaTrXXXX-YYYr002.pdf and so on.<br />
<br />
<br />
== Where to find the LaTeX IridiaTrCover package? ==<br />
<br />
The most recent version of the LaTeX IridiaTrCover package is [[Media:IridiaTrCover-2.0-r11.tar.gz|IridiaTrCover-2.0-r11.tar.gz]]<br />
<br />
<br />
== How to use the IridiaTrCover.sty for LaTeX? ==<br />
<br />
Read the technical report [http://iridia.ulb.ac.be/IridiaTrSeries/IridiaTr2005-006r006.pdf TR/IRIDIA/2005-006]<br />
<pre><br />
The IridiaTrCover package for LaTeX: <br />
How to typeset documents for the IRIDIA -- Technical Report Series<br />
</pre><br />
<br />
The [[#Where to find the LaTeX IridiaTrCover package?|IridiaTrCover package]] contains also the technical report and its source file. <br />
<br />
<br />
== What if you are not able to use LaTeX? ==<br />
<br />
If you are not able to use LaTeX, you can produce your technical<br />
report in PDF format and ask then <br />
[mailto:ericyuanzhi@gmail.com Eric] or [mailto:Sabrina.Oliveira@ulb.ac.be Sabrina]<br />
to generate a cover page and to prefix it to your file. Apart from this step, please follow the [[#How to register a technical report?|other steps described above for registering your technical report]].</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5442
Footbot/Real robot information
2010-04-15T16:03:22Z
<p>Arne: /* Buttons & LEDs */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGoS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Downloading and installing Aseba =<br />
<br />
Download Dashel:<br />
svn co http://svn.gna.org/svn/dashel/trunk dashel<br />
<br />
Install Dashel:<br />
cmake .<br />
make <br />
sudo make install<br />
<br />
Download Aseba (revision 403 as revisions 404 and 405 have compilation bugs)<br />
svn co -r 403 http://svn.gna.org/svn/aseba/trunk aseba<br />
<br />
Check that you have QT4 install (qt4-qmake and libqt4-dev). If not, install them, then install aseba:<br />
cmake .<br />
make<br />
sudo make install<br />
<br />
Check if Aseba studio has been compiled<br />
cd studio<br />
./asebastudio<br />
<br />
if asebastudio is missing it means that you don't have the necessary qt4 lib installed.<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
Put the following lines into ~/.ssh/config:<br />
<br />
host footbot_usb<br />
hostname 192.168.0.202<br />
user root<br />
<br />
Then, configure the interface and connect:<br />
<br />
sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
ssh footbot_usb<br />
<br />
In asebastudio, to connect use<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
To boot the robot, insert the battery. The boot is finished when the beacon lights up in RED->GREEN->BLUE. The flashing LED on the IMX signals a successful boot of the linux system. '''Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.'''<br />
<br />
== Buttons & LEDs ==<br />
<br />
There are two buttons next to the selector. Press them to reset the translator and the dsPics. Usually, when there's strange stuff happening on low-level (i.e. when you have problems with aseba), press the "reset dsPics". After pressing this button, reload the backend!<br />
<br />
The red led on the IMX next to the battery holder indicates the status of the IMX. It should be flashing. If it stops flashing, there was a kernel panic and you have to reset the IMX.<br />
<br />
There's a reset button between the charge connector and the IMX. Press it to reset the IMX and therefore the robot, including the dsPics. This button should '''only''' be used in the rare case that the IMX/Linux hangs (red led stopped flashing). <br />
<br />
The four green LEDs below the selector indicate aseba activity. If they stand still it means that there are no events sent, and therefore that the sensors are dead. Reset the dsPics if necessary, and reload the backend (/etc/init.d/ARGoS.sh start).<br />
<br />
= Connect with aseba =<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml. For example, with the "footbot_obstacle_avoidance" controller, you would execute:<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
=== Crashes? ===<br />
<br />
After your controller crashes you have to reset the whole robot, because aseba/dashel gets into a bad state.<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5441
Footbot/Real robot information
2010-04-14T12:01:50Z
<p>Arne: /* Using your controller on the real robot */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGoS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Downloading and installing Aseba =<br />
<br />
Download Dashel:<br />
svn co http://svn.gna.org/svn/dashel/trunk dashel<br />
<br />
Install Dashel:<br />
cmake .<br />
make <br />
sudo make install<br />
<br />
Download Aseba (revision 403 as revisions 404 and 405 have compilation bugs)<br />
svn co -r 403 http://svn.gna.org/svn/aseba/trunk aseba<br />
<br />
Check that you have QT4 install (qt4-qmake and libqt4-dev). If not, install them, then install aseba:<br />
cmake .<br />
make<br />
sudo make install<br />
<br />
Check if Aseba studio has been compiled<br />
cd studio<br />
./asebastudio<br />
<br />
if asebastudio is missing it means that you don't have the necessary qt4 lib installed.<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
Put the following lines into ~/.ssh/config:<br />
<br />
host footbot_usb<br />
hostname 192.168.0.202<br />
user root<br />
<br />
Then, configure the interface and connect:<br />
<br />
sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
ssh footbot_usb<br />
<br />
In asebastudio, to connect use<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
To boot the robot, insert the battery. The boot is finished when the beacon lights up in RED->GREEN->BLUE. The flashing LED on the IMX signals a successful boot of the linux system. '''Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.'''<br />
<br />
== Buttons & LEDs ==<br />
<br />
There's a reset button between the charge connector and the IMX. Press it to reset the IMX and therefore the robot including the dsPics. This is the fastest way to reset the robot. <br />
<br />
There are two buttons next to the selector. Press them to reset the translator and the dsPics (i.e. when you have problems on aseba level).<br />
<br />
The red led on the IMX next to the battery holder indicates the status of the IMX. It should be flashing. If it stops flashing, there was a kernel panic and you have to reset the IMX.<br />
<br />
The four green LEDs below the selector indicate aseba activity. If they stand still it means that there are no events sent, and therefore that the sensors are dead. Reset the dsPics if necessary, and reload the backend (/etc/init.d/ARGoS.sh start).<br />
<br />
= Connect with aseba =<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml. For example, with the "footbot_obstacle_avoidance" controller, you would execute:<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
=== Crashes? ===<br />
<br />
After your controller crashes you have to reset the whole robot, because aseba/dashel gets into a bad state.<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5440
Footbot/Real robot information
2010-04-14T11:48:34Z
<p>Arne: /* Booting */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGoS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Downloading and installing Aseba =<br />
<br />
Download Dashel:<br />
svn co http://svn.gna.org/svn/dashel/trunk dashel<br />
<br />
Install Dashel:<br />
cmake .<br />
make <br />
sudo make install<br />
<br />
Download Aseba (revision 403 as revisions 404 and 405 have compilation bugs)<br />
svn co -r 403 http://svn.gna.org/svn/aseba/trunk aseba<br />
<br />
Check that you have QT4 install (qt4-qmake and libqt4-dev). If not, install them, then install aseba:<br />
cmake .<br />
make<br />
sudo make install<br />
<br />
Check if Aseba studio has been compiled<br />
cd studio<br />
./asebastudio<br />
<br />
if asebastudio is missing it means that you don't have the necessary qt4 lib installed.<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
Put the following lines into ~/.ssh/config:<br />
<br />
host footbot_usb<br />
hostname 192.168.0.202<br />
user root<br />
<br />
Then, configure the interface and connect:<br />
<br />
sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
ssh footbot_usb<br />
<br />
In asebastudio, to connect use<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
To boot the robot, insert the battery. The boot is finished when the beacon lights up in RED->GREEN->BLUE. The flashing LED on the IMX signals a successful boot of the linux system. '''Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.'''<br />
<br />
== Buttons & LEDs ==<br />
<br />
There's a reset button between the charge connector and the IMX. Press it to reset the IMX and therefore the robot including the dsPics. This is the fastest way to reset the robot. <br />
<br />
There are two buttons next to the selector. Press them to reset the translator and the dsPics (i.e. when you have problems on aseba level).<br />
<br />
The red led on the IMX next to the battery holder indicates the status of the IMX. It should be flashing. If it stops flashing, there was a kernel panic and you have to reset the IMX.<br />
<br />
The four green LEDs below the selector indicate aseba activity. If they stand still it means that there are no events sent, and therefore that the sensors are dead. Reset the dsPics if necessary, and reload the backend (/etc/init.d/ARGoS.sh start).<br />
<br />
= Connect with aseba =<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5437
Footbot/Real robot information
2010-04-14T09:51:55Z
<p>Arne: /* Booting */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGoS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
Put the following lines into ~/.ssh/config:<br />
<br />
host footbot_usb<br />
hostname 192.168.0.202<br />
user root<br />
<br />
Then, configure the interface and connect:<br />
<br />
sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
ssh footbot_usb<br />
<br />
In asebastudio, to connect use<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Buttons & LEDs ==<br />
<br />
There's a reset button between the charge connector and the IMX. Press it to reset the IMX and therefore the robot including the dsPics. This is the fastest way to reset the robot. <br />
<br />
There are two buttons next to the selector. Press them to reset the translator and the dsPics (i.e. when you have problems on aseba level).<br />
<br />
The red led on the IMX next to the battery holder indicates the status of the IMX. It should be flashing. If it stops flashing, there was a kernel panic and you have to reset the IMX.<br />
<br />
The four green LEDs below the selector indicate aseba activity. If they stand still it means that there are no events sent, and therefore that the sensors are dead. Reset the dsPics if necessary, and reload the backend (/etc/init.d/ARGoS.sh start).<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5436
Footbot/Real robot information
2010-04-13T20:44:34Z
<p>Arne: /* USB */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGoS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
Put the following lines into ~/.ssh/config:<br />
<br />
host footbot_usb<br />
hostname 192.168.0.202<br />
user root<br />
<br />
Then, configure the interface and connect:<br />
<br />
sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
ssh footbot_usb<br />
<br />
In asebastudio, to connect use<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5435
Footbot/Real robot information
2010-04-13T20:44:04Z
<p>Arne: </p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGoS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
Put the following lines into ~/.ssh/config:<br />
<br />
host footbot_usb<br />
hostname 192.168.0.202<br />
user root<br />
<br />
Then, configure the interface and connect:<br />
<br />
sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
ssh footbot_usb<br />
<br />
In asebastudio, to connect use<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5434
Footbot/Real robot information
2010-04-13T11:56:58Z
<p>Arne: /* USB */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGOS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
ssh root@footbot_usb<br />
<br />
footbot_usb is aliased to ip 192.168.0.202 in /etc/hosts.<br />
In asebastudio, to connect use<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
You have to wait up to 20 seconds the first time because of the name resolution.<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
cd /home/root/ARGoS/bin<br />
./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5433
Footbot/Real robot information
2010-04-13T11:39:22Z
<p>Arne: </p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGOS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
ssh root@footbot_usb<br />
<br />
footbot_usb is aliased to ip 192.168.0.202 in /etc/hosts.<br />
In asebastudio, to connect use<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
cd /home/root/ARGoS/bin<br />
./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5432
Footbot/Real robot information
2010-04-13T11:37:57Z
<p>Arne: /* By script */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGOS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
$ sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
$ ssh root@footbot_usb<br />
<br />
footbot_usb is aliased to ip 192.168.0.202 in /etc/hosts.<br />
In asebastudio, to connect use<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controllername> <hostname><br />
<br />
The controller is taken from $ARGOSINSTALLDIR/user/my_user/controllers/<controllername>.<br />
<br />
=== By hand ===<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5431
Footbot/Real robot information
2010-04-13T11:28:43Z
<p>Arne: /* By hand */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGOS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
$ sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
$ ssh root@footbot_usb<br />
<br />
footbot_usb is aliased to ip 192.168.0.202 in /etc/hosts.<br />
In asebastudio, to connect use<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controller> <hostname><br />
<br />
=== By hand<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne
https://iridia.ulb.ac.be/w/index.php?title=Footbot/Real_robot_information&diff=5430
Footbot/Real robot information
2010-04-13T11:25:44Z
<p>Arne: /* Installing the libraries in the real robot */</p>
<hr />
<div>= EPFL LSRO Wikipages =<br />
<br />
For updated info go to the EPFL wiki.<br />
http://wiki.epfl.ch/mobots-robots<br />
<br />
= Downloading ARGOS2 =<br />
<br />
To download ARGoS2, you need git. First, create the file ~/.netrc with this content:<br />
<br />
machine iridia-dev.ulb.ac.be<br />
login YOUR_USERNAME<br />
password YOUR_PASSWORD<br />
<br />
and secure it:<br />
<br />
$ chmod 600 ~/.netrc<br />
<br />
Subsequently, configure git (once and for all) to accept Iridia dev's autosigned certificate:<br />
<br />
$ git config --global http.sslVerify false<br />
<br />
Finally, download the code:<br />
<br />
$ git clone https://iridia-dev.ulb.ac.be/projects/argos2.git argos2<br />
<br />
= Connecting to a footbot =<br />
<br />
Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth.<br />
<br />
== USB ==<br />
<br />
$ sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0<br />
$ ssh root@footbot_usb<br />
<br />
footbot_usb is aliased to ip 192.168.0.202 in /etc/hosts.<br />
In asebastudio, to connect use<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Bluetooth ==<br />
<br />
=== udev setup ===<br />
<br />
First, you have to setup the bluetooth connection via udev. We'll use 10:00:E8:6C:F0:4D and a handbot1 as an example here, replace accordingly. You have to be root for that.<br />
<br />
hcitool scan<br />
<br />
Take note of the MAC address displayed.<br />
<br />
cd /etc/bluetooth/<br />
mkdir -p passkeys<br />
echo -n '0000' > passkeys/10:00:E8:6C:F0:4D<br />
<br />
Edit the file /etc/rfcomm.conf and add the following line:<br />
<br />
rfcomm1 { bind yes; device 10:00:E8:6C:F0:4D; }<br />
<br />
Edit the file /etc/udev/rules.d/90-local.rules and add the following line:<br />
<br />
ACTION=="add", SUBSYSTEM=="tty", KERNEL=="rfcomm[0-9]*", WAIT_FOR_SYSFS="address", ATTR{address}=="10:00:E8:6C:F0:4D", SYMLINK+="handbot1", MODE="0666"<br />
<br />
Create the serial connection:<br />
<br />
rfcomm connect /dev/rfcomm1<br />
<br />
You should then see the device /dev/handbot1 linked to /dev/rfcomm1.<br />
<br />
=== Connect with aseba ===<br />
<br />
Connect with aseba using the following connection string:<br />
<br />
ser:device=/dev/handbot1<br />
<br />
=== Connect to the IMX ===<br />
<br />
==== Where to put the mini key on the footbots? ====<br />
<br />
The connector for a connection to the IMX is "UART1" next to the IMX. The key as to be outward facing (usually it's marked white on the side for pin 1, look for the 1 on the PCB).<br />
<br />
==== Connect to shell ====<br />
<br />
Setup the device as described above so that the serial device /dev/footbotX exists. Then, use minicom or similar to connect to the device.<br />
<br />
minicom -s<br />
<br />
Change the serial port to the device of the robot. Then select exit and press enter 2-3 times. You should see a shell.<br />
<br />
== Wifi ==<br />
<br />
Works "normally" pretty reliable when used with '''static''' IPs. Follow the instructions on http://wiki.epfl.ch/mobots-robots/Wifi h.<br />
<br />
= Booting =<br />
<br />
Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing.<br />
<br />
Connect with aseba with this custom destination:<br />
<br />
tcp:host=192.168.0.202;port=33333<br />
<br />
== Does not work? ==<br />
<br />
If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio. Restart <br />
asebamedulla, the pics and reload the backend<br />
<br />
/etc/init.d/asebamedulla.sh restart<br />
/etc/init.d/dspics-power.sh restart<br />
/etc/init.d/ARGoS.sh restart<br />
<br />
If this does not work, reset the translator and the pic per button. Rerun asebamedulla and try connecting.<br />
<br />
If this does not work, do the same as above with setting the selector to another even value (NOT an odd one!). Try<br />
connecting again.<br />
<br />
= Battery =<br />
<br />
* full battery = 4.2V<br />
* empty battery < 3.6V <br />
<br />
The charger we have at Iridia damages the batteries.<br />
We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged.<br />
Only two batteries will be recharged.<br />
<br />
= Sensors =<br />
<br />
== Camera ==<br />
<br />
Cameras don't work at the same time; you can use them one by one.<br />
<br />
If you want to stream images out of the footbot camera, in /home/root/ARGoS/bin you will find<br />
a program named mobotsvision. It is a streaming server.<br />
<br />
To use it, the syntax is:<br />
<br />
$ cd /home/root/ARGoS/bin<br />
$ ./mobotsvision <omnidirectional|ceiling> <gain> <exposure><br />
<br />
The first argument lets you select the camera to stream images from; the gain is the amount<br />
of signal amplification you want (0-127). A low value makes the images darker, a high value makes them<br />
brighter but also much noisier. The exposure is the total amount of light allowed to fall into the CCD<br />
sensor. Its range is 0-255. A low value makes images very dark, a high value makes them very bright. The<br />
exposure is linked to the time needed to take an image; a low value entails high frame rate, a high value<br />
entails low frame rate.<br />
<br />
When running the server, if you get an error such as:<br />
<br />
[FATAL] Cannot open /dev/video0: Input/output error<br />
<br />
then try unbinding the driver and then binding it back. You do it this way:<br />
<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind<br />
$ echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind<br />
<br />
<br />
When programming a low level tool for the robot, to select the camera to use, echo to file<br />
/sys/class/gpio/gpio28/value a value of 0 for the omnidirectional camera and 1 for the front one.<br />
The camera module is mt9t031.ko.<br />
<br />
For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>.<br />
<br />
= Actuators =<br />
<br />
== Turret Rotation ==<br />
<br />
At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set.<br />
<br />
= Framework =<br />
<br />
== Compiling ARGoS for the real robot ==<br />
<br />
Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise.<br />
<br />
=== By script ===<br />
<br />
Each package has a script that takes care of building it. You need the toolchain of course. The script is called build_real_robot.sh and should be invoked as follows:<br />
<br />
./build_real_robot.sh footbot<br />
<br />
There is also a top-level build script that builds the common, real robot and user package.<br />
<br />
./build_real_robot_framework.sh footbot<br />
<br />
=== By hand ===<br />
<br />
Configure your environment for cross-compilation:<br />
<br />
$ source /usr/local/angstrom/arm/environment-setup<br />
<br />
Then, compile the common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd common<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/common<br />
cd build/swarmanoid/common<br />
cmake ../../../swarmanoid/common<br />
make<br />
<br />
If everything goes OK, compile the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot<br />
mkdir -p build/swarmanoid/footbot<br />
cd build/swarmanoid/footbot<br />
cmake ../../../swarmanoid/footbot<br />
make<br />
<br />
If everything goes OK, compile the user package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd user/my_user<br />
mkdir -p build/footbot<br />
cd build/footbot<br />
cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../..<br />
make<br />
<br />
== Installing the libraries in the real robot ==<br />
<br />
If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and <br />
a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries.<br />
<br />
=== By script ===<br />
<br />
There's a script in the $ARGOSINSTALLDIR that calls make install for all packages and then copies the libs, the backend and the controller to the specified robot via ssh. Currently it works only for the footbot. It has to be invoked as follows:<br />
<br />
./update_real_footbot.sh <controller> <hostname><br />
<br />
=== By hand<br />
<br />
Create a directory to install ARGoS locally:<br />
<br />
cd $ARGOSINSTALLDIR<br />
mkdir install<br />
<br />
Install the common package libraries:<br />
<br />
cd common/build/footbot<br />
DESTDIR=../../../install make install<br />
<br />
Same thing for the real robot swarmanoid common package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/common<br />
DESTDIR=../../../../install make install<br />
<br />
Same thing for the real robot swarmanoid footbot package:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd real_robot/build/swarmanoid/footbot<br />
DESTDIR=../../../../install make install<br />
<br />
Now go into the install directory:<br />
<br />
cd $ARGOSINSTALLDIR<br />
cd install<br />
<br />
And get into the directory where the libraries have been copied:<br />
<br />
cd usr/local/lib/argos2<br />
ls<br />
<br />
Copy all the libraries onto the robot:<br />
<br />
scp * root@footbot_usb:~/ARGoS/lib/<br />
<br />
== Using your controller on the real robot ==<br />
<br />
So you managed to compile the controller on your pc and maybe also to update the libraries. Now what?<br />
<br />
When you have compiled your controller you will see that in "build/controller/name_of_your_controller/" you will find and executable file. This file has to be uploaded to the real robot.<br />
<br />
Once this is done, connect with aseba to the robot (good luck) and then you execute aseba_backend.aesl (you can find this file on the robot, under ~/ARGoS). <br />
<br />
Now you can run your controller:<br />
<br />
[on the robot] ./your_controller -c FILECONFIG.xml -i ID_CONTROLLOR<br />
<br />
where FILECONFIG.xml is the same xml you used in your simulated experiments and ID_CONTROLLER is the id of your controller (really?) meaning the id that is in the xml.<br />
<br />
<br />
<br />
e.g. with "footbot_obstacle_avoidance":<br />
<br />
./footbot_obstacle_avoidance -c obstacle_avoidance.xml -i sfc<br />
<br />
== Using the joypad to control a footbot ==<br />
<br />
If you want to test the robots with the joypad you need a program that converts the input from your joypad to events into aseba. This program is called "asebarc" and you can ask it to Manuele, Carlo or Eliseo. Once you have compiled this, connect to the robot with aseba and run "marxbot-swarmanoid-rc.aesl" (as before, ask this file to somebody). On your pc, run "asebarc" with this command:<br />
./asebarc "tcp:host=192.168.0.202;port=33333"<br />
<br />
You should now be able to control the footbot with the joypad. <br />
<br />
One last thing that you have to know is that the buttons on the back of the joypad (R2 and L2, i think) are used to switch the mode of the turret between passive and rigid. The button that turns the light blue set the turret passive, while the one that turns the light green turns the turret rigid.</div>
Arne