Interactive web site of Télécom ParisTech's ELECINF344/ELECINF381 Robotics and Embedded Systems classes (a.k.a. ROSE, 2012 session).


Ball-E’s first moves

We are getting closer everyday to our goal, Ball-E manages sometimes to keep its balance for a bit more than a second.

Yesterday, we realized that the plastic between the wheels on the omni-wheels made a huge friction on the ball, preventing him from  moving easily. Therefore, we used a soldering iron to melt the plastic and then a dremel to sand it and it is now working much better. We are now having a hard time choosing  the coefficient of our PID algorithm. I hope you will be able to see videos of Ball-E standing by its own means soon !

Matthieu Tardivon

Wi-fi, Ball-E’s structure and real tests

Two days ago, we finally managed to flash the Gainspan Wi-fi module’s firmware and we can now talk to the module through the SPI interface and I managed to make it connect on a router which was in the room. I am now working on the driver to make it work completely.

As I had finished coding the PD algorithm, Pierre-Hugues worked in order to enable us making real tests of balance with Ball-E. Therefore, I build a system to put the robot on the ball while hanging in the air so that it couldn’t fall on the floor (you may see it on the pictures). We made some tests with several balls and it appeared that we needed to have a center of gravity higher. That’s why you can now see  Ball-E with a tall structure. Today we are going to buy a bigger ball to make new tests, it should be easier for the robot to keep its balance with this one.

We hope that in a few days, we will post videos of Ball-E standing up and not falling !


Matthieu Tardivon

Wifi, and PD algorithm

During the vacation, I had a hard time coding the wifi driver using the SPI interface. Hopefully, we had foreseen a serial interface in case of problem. Through the serial interface, typing the command AT+SPICONF=0, 0 (taken from the reference manual) gave us the answer ERROR: INVALID INPUT. Therefore, we concluded that it must be the firmware of the Wifi module that doesn’t handle the SPI interface. However, to download a new firmware, I had to firm a NonDisclosure Agreement and send it to Gainspan and fortunately they answered us quite fast and we now have access to all the firmwares available. Today’s objective is to flash the Gainspan module and code the Wifi driver through the SPI interface.

While I was waiting for Gainspan’s answer, I studied the PD algorithm in order to control Ball-E’s balance and I coded a function that should (if I didn’t make any mistake) make Ball-E keep its balance. We will only be able to test it on Wednesday when we receive the external motor control card.

Matthieu Tardivon

Ball-E’s new PSSCs

Through yesterday’s presentation and teachers’ comments, we have defined our new Project Specific Success Criteria.

Here they are :

Work Manager Deadline
Kalman filter working Otilia 04/24/2012
Complementary filter working Pierre-Hugues 04/24/2012
ADC to measure battery level working Scott 04/28/2012
Zigbee working Otilia 04/28/2012
Wi-fi working Matthieu 04/24/2012
H bridges Pierre-Hugues 04/23/2012
Motors’ piloting Pierre-Hugues 04/24/2012
Fixing PCB/IMU/Batteries Matthieu 04/25/2012
Cooling circuit Mattthieu 04/25/2012
Ball-E is standing Scott 04/27/2012
Ball-E moves the way we want Scott 05/02/2012
We can pilot Ball-E with an Android smartphone Matthieu 05/04/2012

Yesterday, I also managed to make the leds blink on our Ball-E board, let’s begin the Wi-fi !

Matthieu Tardivon

Today’s presentation

Yesterday, we talked about all what we have done until now and we had a meeting in order to be sure that everybody understood mostly everything about others’ work.

Thanks to this meeting, we scheduled next steps of Ball-E’s conception and we prepared our presentation for today.


Matthieu Tardivon


Great news : Ball-E is due to be born soon !

Until Wednesday, I worked on the PCB with Pierre-Hugues and it has been sent in order to be produced (We even have pictures of the PCB’s birth). Spot welding might be our next week’s work !

As we have already received our stepping motors and omniwheels, till today I have been working on the architecture of the robot and it will soon be done, just take a look at the base of the robot ! I made it so that it is possible to change the angle of the omniwheels relatively to the ball.

Scott is working on the simulation part, and Otilia is working hard to make the Kalman filter work before Easter vacation.


Matthieu Tardivon

Ball-E news

First of all, I would like to apologize for not having given you news about Ball-E for such a long time.

Let me make a short summary of where we are now.

Before the Athens week, we decided several components of our robot and we received most of them. Actually, we have our 3 stepping motors (Trinamics QSH5718), our two-rows 4″ omniwheels (Kornylak). With Pierre-Hugues, we made the pin assignment of our STM32405RG-based card and finished the schematic of our PCB. Routing will be done as soon as Alexis will have corrected our schematic. Scott and Otilia are working hard in order to implement a Kalman filter and to understand a huge part of the mechanics.

Alexis lent us a card with an accelerometer, a gyroscope and a magnetometer so that Otilia and Scott can test their Kalman filter. Pierre-Hugues is going to code tomorrow a bootloader which will make the card dump the values of the sensors through the usb port.

My objective of tomorrow is to build the whole robot so that it will be ready for real tests when we will receive the PCB.


Matthieu Tardivon

Welcome to the world of ROSE, baby Ball-E

Today, while Otilia and Scott tried to learn things about Kalman filter and from Rezero’s final report, and almost commited suicide after :p (don’t worry they’re ok), Pierre-Hugues and I continued the mechanical calculations.

Unfortunately, it appears that our calculations must be false as the result with numerical values didn’t make any sense.

So we decided to make tries with a real ballbot. We asked the Telecom ParisTech Robotics’ Club if we could borrow them some omniwheels and DC motor in order to estimate physically the power that need for each motor. We would like to thank them for accepting and we would like to introduce you our new friend : Baby Ball-E


Matthieu Tardivon

A new intense week is coming

Last friday, we had the communication challenge which put an interesting end to the STM32 practical work (but we know that more should come soon ^^).

The Hexapod team pointed out an interesting software named V-Rep, so I took a look and it seems a bit complicated to simulate a ballbot with it. Therefore I tried to use robotSim and robotBuilder from Cogmation but the program wouldn’t stop crashing on my computer…

As we had found some Matlab simulation code from the existing ballbot project (such as Rezero), I thought the best solution should be to use Matlab and Simulink which seems to be really powerful. My goal for the next few days is to learn how to use it and try to make simulations with (as soon as we’ve finished some mechanical calculation with Pierre-Hugues).

We also made a kind of summary of our meeting with Alexis an Samuel on our Ball-E Google group in order to settle a better communication inside the team.

I hope that next post will come with complicated calculations and some screenshot of our work !


Matthieu Tardivon

Ready for tomorrow

Today, I finally finished the practical work on the STM32 card.

It can sing a Bach’s song received by Zigbee ! I hope that all I have done will be enough to handle tomorrow’s communication challenge (Spare me Murphy, please ^^)

The BallE team had a meeting with Alexis and Samuel and we discussed many things. I won’t detail it in this post because Pierre-Hugues should do it soon and he will also explain some of the mechanical calculations we made the last few days.


Matthieu Tardivon