Anim4Bot

Robotic and DIY

  • Hexapod Robot
    • Animabot Rev3
      • Mecha
      • Hardware
      • Software
    • Animabot Rev2
    • Animabot Rev1
  • 3 axis CNC
  • Raspberry Pi
  • Robotic Team
  • SolidWorks
  • 3D Printer
  • Software
    • Image Processing
  • Contact

Animabot Rev3 – Mecha – Parts are on the way !

Posted by Emmanuel Sichet on 30/07/2019
Posted in: Animabot Rev3, Mecha. Tagged: 3D printer, Animabot, hexapod, hexapod robot. Leave a comment

Good news ! The body parts are done and on the way ! I’m really exited to see how Animabot will come along once assembled. For the moment, I’m still writing and testing the drivers of the Motherboard and testing all components…. So hopefully, within few weeks I will finish this, send a new motherboard to production and integrate it.

Now, let’s enjoy the beauty of SLA 3D printing with smooth finish :

Big Puzzle
Big Puzzle
Upper Body
Upper Body
IMG_0090
Lower & Upper Body Interior
Lower & Upper Body Interior
Some internal parts
Some internal parts
Lower Body
Lower Body

He is gonna be AWESOME !!!!

Animabot Rev3 – Hardware – Motherboard

Posted by Emmanuel Sichet on 27/07/2019
Posted in: Animabot Rev3, Hardware. Tagged: Animabot, electronic, hexapod, hexapod robot, LM25119, LSM9DS1, LTC4015, STM32F4. Leave a comment

I finally received the rest of the components for the motherboard ! took me some hours to populate everything (QFN packages take a bit of time to solder when you are not used to 😀 )The smoke test passed for the Power supplies (7.6V, 5V) but I still have to test the battery charger… which gives me a bit of apprehensions because I don’t want to fry my battery :/

I will definitely have to make an improved version in the next few weeks to fix the following issues:

  1. Lack of thermal exchange for the PSU controller and MOSFET
  2. Change from 10DOF IMU board to a 9DOF IMU (LSM9DS1TR)
  3. Separate I2C bus for the Eyes (they use too much bandwidth forth rest of the sensors)
  4. Overall Routing & Layout improvements
  5. More detailled SilkScreen

But first I have to finish testing all the features and components to see if further modifications are required. But for now I’m pretty happy with the result, no big trouble. I did some thermal test and the PSU is around 40°C in idle mode without cooling and 35°C when the fan is active, even so the thermal dissipation of the component in not ideal and the fan is powered at 3V3 instead of 5V.

Motherboard in progress
Motherboard in progress

As mentioned, I still have the rest of the features to test (around 15: Telemeter, Bluetooth, Charger, Raspberry Pi communication, Servos, etc…) so stay tune 🙂

Animabot Rev3 – Mecha – Leg Sample

Posted by Emmanuel Sichet on 15/07/2019
Posted in: Animabot Rev3, Mecha. Tagged: 3D printer, Animabot, hexapod, hexapod robot. 9 Comments

The mechanical design is finished since few weeks, but I have been waiting some sample of the leg to check the tolerances, quality and color. This sample allowed to check the passage of the cable in the Coxa, the Tibia Cap (anti-slippery pad), servo mounting, etc..

I’m glad I ask I did that before the complete manufacturing because I found several issues. The passage for the cable needed to be deeper to protect it, the Pad was too small to hold in place properly and the color did not satisfied me totally… I’m still waiting for some more sample to compare and chose the final color !

 

IMG_20190709_070120_HDR
IMG_20190709_070334_HDR
IMG_7737

Hopefully the samples will arrive soon, so I can order all the parts to assemble Animabot !

Animabot Rev3 – Mecha– Body design

Posted by Emmanuel Sichet on 07/06/2019
Posted in: Animabot Rev3, Mecha. Tagged: Animabot, hexapod, hexapod robot, Solidworks. Leave a comment

It’s been few months now since I started the design and it is approaching the end \o/. The main body and legs are finally done, but I still have to do a final check of tolerances, clearances, cabling , mounting, etc.. before sending the parts for productions. As mentioned earlier, the design is very close to Rev2, however, the internal structure has been improved to be more rigid and more reliable. On Rev2, I had too much flexibility between parts and torsion on the body (due to the 5 parts body assembly) which basically ruined everything… The legs axles have also been redesigned or better performance and the legs will be equipped with a separate End-Cap (ground contact) with a rubber part to increase adherence.

So, hopefully I overcome all these issues with this version 😀

The ear design is also done and I think it gives a pretty nice look to the robot ! It will gives Animabot much more expression capabilities and at the end it doesn’t look to organic and not too mechanic either which I find to be a good compromise. In any case, it is difficult to make a functional machine looking organic when you have to install real motors, joints, PCBs, cables, etc..

I still have the dock to do, So this will be the next task…

Animabot Render 4
Animabot Render 7
Animabot Render 9
Animabot Render 8
Animabot Render 6

 

Animabot Rev3 – Hardware – Motherboard

Posted by Emmanuel Sichet on 29/05/2019
Posted in: Animabot Rev3, Hardware. Tagged: Animabot, hexapod, hexapod robot, STM32F4. Leave a comment

So I received the Motherboard and started populating it 🙂 All components are not yet soldered because I want to test the board step by step, starting with the MCU and the I2C bus (where all the sensors are connected).

Motherboard test
Motherboard test

As of now, the following is working:

  • Flashing-Debugging the MCU
  • Flexible OLED via SPI
  • 10DOF IMU via I2C
  • Eyes via I2C
  • Gesture Module

I still have some trouble with the RTOS and the IMU, after some time the tasks start to be delayed and the IMU is not responding anymore… but that will be for later, I want to finish the Body design and send it for printing first ! the next step is to mount the PSU and the Charger.

But now that I have the Eyes working I started implementing some expressions 😉 not so bad for a first try !

Animabot Rev3 – Mecha – Head Design

Posted by Emmanuel Sichet on 29/04/2019
Posted in: Animabot Rev3, Mecha. Tagged: design, hexapod, robot, robotic. Leave a comment

The past weeks have been dedicated to the Head design which is coming along nicely 🙂 The head is slightly smaller than the actual version but contains more devices:

  • Gesture sensor on top
  • 2x OLED displays for the eyes
  • 5Mpx Micro Camera
  • 2x Servos for Ears
  • 1x Servo for Head pitch

The head is divided in 2 parts in order to allow me to assemble the devices inside. Both part are screwed together and for the first time I will be using threaded inserts in order to have proper mounting 😉

 

Head back
Head bottom
Head Section1
Head zoom2

The ears design will be done later, I want to have the complete robot designed to see how they fit with the rest of the body.

I already order some samples of the head to see the print quality and tolerances, I’m glad I did it because I already found several errors I have to correct for the final version. I could also do a test fit for the parts and it looks pretty fine as you can see:

IMG_20190426_151259.jpg

The color is not the definitive one and I’m not sure about the Display color… but it gives a pretty good idea of the future look 😉

 

Animabot Rev3 – Mecha– Body design

Posted by Emmanuel Sichet on 11/04/2019
Posted in: Animabot Rev3, Mecha. Leave a comment

So, while I have been silent on the blog, I have been working hard on the design. Basically, Upper and Lower Bodies are done, only some few tweaks here and there to make all fit together. As you can see in the renderings below, the body shape is mostly the same but I fixed many issues from the previous body. These issues mostly came from the FFM 3D printing process (lack of precision and build volume and my beginner level in 3D printing at that time). The new robot will be printed with SLA process allowing more complex shape and better precision than before.

The Lower body contains the battery, Motherboard and Control Interface. The upper body is composed of 2 parts which allows me much easier assembly and better reliability. The upper body will be constantly screwed to its lower counterparts and the Upper Cover (where most of the devices are placed) will be screwed on the Upper body. As you can imagine, this will allow me to access all the internal part of the robot without removing the legs (which is currently a huge problem on the Rev2), by simply unscrewing the Top Cover. The Head, Rpi, servos are directly mounted on the Top Cover, and connected by only 3 cables to the Motherboard for easy assembly/access.

The Kinematic to lift the Rpi will be a nice feature allowing me to program and access it by the push of a button 😀 The tolerances are quite tight so I hope it will work as expected… This time I also added a small switch on top with RGB led in order to have some feedback/control over the robot (mode selection, battery level, etc..)

Lower Body - topview
Lower Body – topview
Lower Body - bottomview
Lower Body – bottomview
Hood Kinematic
Hood Kinematic
Upper Cover - Hood opened
Upper Cover – Hood opened
Upper Body - Hood closed
Upper Body – Hood closed

 

Animabot Rev3 – Hardware – Motherboard

Posted by Emmanuel Sichet on 14/02/2019
Posted in: Animabot Rev3, Hardware. Leave a comment

As mentioned, now Animabot is only composed of 1 motherboard instead of several which help a lot on 2 points: performance and compactness.

The PCB is divided in 4 main areas:

  • Front: Power Supplies (7.4V – 5V – 3.3V)
  • Middle: IMU + Cortex M4 + Interface (Bluetooth, buttons)
  • Rear: Battery Charger
  • Edges: Connectors

The Power supply is based on a LM25119 from Texas Instrument and capable of delivering 2x 10A at 7.4V, that’s over 140W !!!
Of course, to dissipate all this power you need a proper cooling system… this is why the PCB is equipped with a “wind tunnel” cooling directly the PSU and the Charger ;)

The charger evolved as well and is now capable of Telemetry, I will be able to supervise the input and output energy of the Battery. The charger also takes care of the standard protections (over-charge, battery temperature, under-voltage, etc..) and all the monitoring/configuration is done via I2C ! I also over-dimensioned most of the components like the transistors to be sure to be on the safe side.

I also removed the ATX Raspi from the robot and the Raspberry Pi will be controlled by the CortexM4 directly for powering ON & OFF. To avoid the last noise issue on the speakers, I added a small isolated DC-DC converter for the audio amplifier.
As mentioned, all the sensors are now connected together on the same I2C bus, which should improve and simplify the data acquisition (one function to gather all sensors data). The IR telemeter as well, I use a small I2C ADC converter to do the trick.

Board dimensions [LxWxT]: 177mm x 84mm x 1mm

Motherboard - top
Motherboard – top
Motherboard - bottom
Motherboard – bottom

Animabot Rev3 – New version, new Specs !

Posted by Emmanuel Sichet on 28/01/2019
Posted in: Animabot Rev3. Tagged: 3D printed, hexapod, robot, robotic. Leave a comment

Hi Everyone,

So it’s been a while since I posted something here… I have been really busy on some other projects which made the progress on Anima very difficult… I still continued the development on the current version but the more I worked on it, the more I was thinking that it could be greatly improved !

The version 1 and 2 have already been done, however I’m not completely satisfied with the current version… The body cut in several parts due to print size limitation kind of destroy the overall aesthetic and weaken the body. Then the concept was oriented towards a exploration/security robot and I figured it would be better to design it more like a companion instead !

This will be the third and last version of this robot… I started this project quite some time ago (in 2001) and I think it is time to at least finish one version of it :D
The concept is still the same and most of the exterior design will remain similar to the Rev2. However, the hardware and mechanical will greatly improve !

The Hardware design is almost finished and the Mechanical design is approximately 60% completed ! so stay tuned for updates !


Improvements from Rev2:
• SLA 3D printed body
• Overall body design improved
• 4 Layers Single Motherboard for better performance and size reduction
• All sensors are I2C and on the same bus
• Improved battery charger
• Improved Power supply
• Efficient active cooling
• Improved communication between STM32 and Rpi
• 2 axis Head (new feature !)
• 2 Oled display for the Eyes (new feature !)
• 2 moving ears (new feature !)
• Gesture sensor on top the the head for better interactions (new feature !)
• Docking station capable (new feature !)
• Flexible Oled display for robot status (new feature !)
• Hidden Raspberry Pi with moving hood (new feature !)


Components & Characteristics:
• Energy: Li-Ion 11.1V 7800mAh
• Power: Custom 140W PSU based on LM25119PSQ
• Charger: Custom, based on LTC4015
• Brains: STM32F415VGT6 + Raspberry Pi 3 B+
• OS: RTOS + Raspian
• Programming Language: C, Python
• Communication: 2x Bluetooth + WiFi
• Vision: 5Mpx Micro Camera
• Displays:
– 2x 0.49″ OLED for the Eyes
– 1x 1.81″ Flexible OLED for robot status
• Actuators:
– Legs: 18x Herkulex DRS-0101
– Hood: 1x KST DS215MG
– Head: 2x KST DS215MG
– Ears: 2x Hitec HS-40
• Sound: 2x 1W stereo speakers + buzzer
• Interface:
– Capacitive touch switch with RGB led
– Gesture sensor
• Control: Autonomous and Remote-controlled
• Sensors:
– 1x IMU 10-DOF
– 2x LM75B temperature monitor
– 1x IR telemeter(GP2Y0A21)
– 1x Magnetic switch for charging dock
• Target environment: indoor/outdoor
• Size [LxWxH]: 28cm x 36cm x 16cm
• Weight: 2,5kg

Simple Head Tracking with OpenCV

Posted by Emmanuel Sichet on 28/02/2017
Posted in: Image Processing. Tagged: face detection, Head Tracking, opencv, python, tkinter. 1 Comment

Hi,

I’m currently working a bit on Animabot’s software (Raspberry Pi side). I developed a small application for the Head Tracking which will be used on the robot. The application is developed in Python and using TkInter for the GUI. The software is using the standard Face Detection from OpenCV.

The program checks for face to detect, then provide the Head center position regarding the center of the video. It also sends the position trough UART is order to link the Pi to another board if needed (in my case, to the STM32F4). Or through socket if you want to use the info internally in the Pi. The output coordinates are filtered to have a more accurate position and also to avoid having values changing every 100ms…

The interface also allows to change the detection settings (video cropping, Face HitBox size, etc..) These parameters are directly in the GUI so it is easy to find the right settings. I will maybe add a save/load feature for the parameters later if needed. But for now you can tune these parameters in real-time, then change their default values in the code.

The output coordinates (on UART and socket) as the following format : <%+0.3d|%+0.3d>. This means, that from the above screenshot, the output value is : <+034|-021>

This application is based on Python 2.7 and OpenCV 3. To use it you need to install the following packages : PIL, tkinter, PySerial and numpy. For now I’m working on windows, so I didn’t tried it on the Pi yet… this means I can’t help you for packages installation… However, I suggest you to install PIP to install packages, this would be much easier. Do not forget to place haarcascade_frontalface_default.xml in the same folder as the Python file.

Of course I will not use this application for the Pi as it would be too heavy to process smoothly, I will make a lighter version without GUI and without video feedback and only focus on the algorithm and UART output.

Below you can find the application’s code. Please be indulgent as I’m still learning Python… I’m sure it can be greatly improved (if you have corrections/suggestions, please tell me 😉 ) but at least it is as clear as possible and working quite fine ! Normally the code contains enough comments to understand it if you know how to program. But if you have questions, do not hesitate to ask me !

>>>  Source code available here <<<

Posts navigation

← Older Entries
Newer Entries →
  • Enter your email address to follow this blog and receive notifications of new posts by email ;)

  • License

    Creative Commons License
    Hexapod Robot Animabot created by Emmanuel Sichet is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

    Creative Commons License
    Animabot & Anim4Bot names created by Emmanuel Sichet are licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

  • Search

  • Linkedin profile

    View Emmanuel Sichet's profile on LinkedIn
  • Archives

    • October 2020 (1)
    • April 2020 (1)
    • March 2020 (1)
    • December 2019 (2)
    • November 2019 (2)
    • September 2019 (1)
    • August 2019 (2)
    • July 2019 (3)
    • June 2019 (1)
    • May 2019 (1)
    • April 2019 (2)
    • February 2019 (1)
    • January 2019 (1)
    • February 2017 (1)
    • September 2016 (1)
    • November 2015 (1)
    • September 2015 (1)
    • August 2015 (1)
    • July 2015 (2)
    • June 2015 (3)
    • May 2015 (2)
    • April 2015 (1)
    • March 2015 (3)
    • February 2015 (1)
    • November 2014 (2)
    • October 2014 (2)
    • August 2014 (1)
    • July 2014 (3)
    • June 2014 (2)
    • May 2014 (4)
    • April 2014 (2)
    • March 2014 (14)
  • Meta

    • Register
    • Log in
    • Entries feed
    • Comments feed
    • WordPress.com
  • Blog Stats

    • 41,644 hits
Blog at WordPress.com.
Anim4Bot
Blog at WordPress.com.
  • Follow Following
    • Anim4Bot
    • Already have a WordPress.com account? Log in now.
    • Anim4Bot
    • Customize
    • Follow Following
    • Sign up
    • Log in
    • Report this content
    • View site in Reader
    • Manage subscriptions
    • Collapse this bar
 

Loading Comments...