“Padre Balistico” a (hopefully) fast line follower robot

photo_2016-09-26_23-10-24

Spending time with the guys at Officine Robotiche (a huge thank to Stefano Artigianato Robotico),  i’ve discovered the world of line followers. Apparently simple robots whose ultimate goal is to, guess what, follow a line 🙂

This simple task involves several issues:

  • reading sensors to determine the line displacement;
  • employing a control algorithm to determine the movement vector;
  • motor control;
  • several other ancillary stuffs, like telemetry, etc;

Obviously mine will run LibrePilot 🙂 and that simplifies a lot of things as most of the component needed are either in place or needs minor rework.

Unfortunately I had no enough time to make a custom board so I went for some ready stuffs for sensor board and motor driver. Thanks to Stefano’s suggestions and after fiddling with their datasheets I ended with the following component list:

It will be based on OpenPilot Revolution board given it has plenty of I/O and RF module onboard, useful for tuning and telemetry.

I’ve also left some mounting holes that may host a NanoPI neo. One day it will be used for optical recognition for, i.e. better line speed planning.

This is the frame I made for this robot

 

img_20160925_195509_hdr

It is made of two parts, the main frame structure and sensor housing. It is available for download at Thingiverse (http://www.thingiverse.com/thing:1792422)

I used PETG for the main part and PLA (that is hard and have very low friction).

 

img_20160925_195654_hdr  img_20160925_194736_hdr

And here is a short video of the thing moving for the first time, using a standard RC transmitter (and related receiver) for control. It is already using gyro for yaw/trajectory stabilization

There is still a big to do list ahead, including (but not limited to) reversable motors handling and sensor reading.

LibrePilot had already almost everything needed. I added a specific target ( i called that roborevolution  based on the revolution target, employing several changes needed to manage brushed motors and all the sensors needed). To have this first test working i only had to tweak the Servo motor drivers to handle higher frequencies and to increase the available resolution.

 

edit: here is the, still very hacky. source code i’m working on  https://github.com/AlessioMorale/LibrePilot/tree/amorale/linefollower

edit2: and it works 🙂 until i find some time for a new update post, here are two videos of its first tests

…after a bit of tuning 🙂

 

Introducing LibrePilot

 

 

If you know a little bit of OpenPilot history you understand it was more about when, not “if”.  After a little less than 4 years of contributions to the OpenPilot project it was time to part.

Just to give a bit of context, I started with OP at the beginning of 2012, working at the early stage of the revolution firmware and hardware development. I mostly took care of the bare metal firmware side, sensors and peripherals interfaces, porting the code to various targets (i.e. STM32 F0 for GPS V9, STM32F411 for nano Nano). I‘ve also participated in hardware development/validation and testing since the initial Revolution prototypes (not the small officially sold, but the previous bigger brother http://wp.me/p1tDhc-2H ) . I’ve worked at flight performances improvement with mini quads for CC3D/Revo (the thing that, together with the acro+ develiped by Eric/CorvusCorax,  made CC3D so popular in the 250 class racers) , implemented OneShot, notification smart leds support, a new sensor framework implementation and several other things.

Later I’ll have to write some detailed chronological history of the awful situations,  the falsification and everything else happened in the last 1 and 1/2 months that brought me, most of the development team and several key members to build a new project (LibrePilot) from the roots of OpenPilot.

One question that i have been asked several time is: wouldn’t be better to join to an existing project, like TauLabs?

This was actually one of the possibilities, the fact is that we are already a solid, very well proven team and this may have caused “integration” issues.

But the intentions are to collaborate with other projects, especially TauLabs. Probably one of the best (long term) bets for both projects is to converge to a single codebase that takes the best of both worlds. Unfortunately it is a quite demanding task as in the last couple of years they have diverged a lot, but surely it will worth the effort, both in term of features/quality than in term of critical mass of users and development team.

statement_departure

Foldable quad for ROS integration experiments

I’m shortly going to work integrating the OpenPilot telemetry with ROS.

Main (long term) focus is indoor positioning and navigation.

This is a quick mockup of the craft that will be used. Plates are going to be rebuilt to better host everything

 

The reference platform  is made by

  • OpenPilot Revolution flight controller;
  • OpenPilot GPSV9 with integrated magnetometer;
  • Control link using Revolution on board OPLink;
  • ODroid U3 sbc hosting Ubuntu server 14.04 with ROS Indigo;
  • WIFI card TL-WN722N (that uses an external antenna connected with a RPSMA);
  • USB Web Cam, initially used for optical flow.
  • Telemetry link using WIFI connection;
  • Connection between Revolution and Odroid using USB.
  • Sonar sensor for precise agl measurement

DSC_0554 DSC_0555 DSC_0557 DSC_0559 P1020406 P1020407 P1020408

Mini Revo foldable H frame

Here are the drawings for a mini-H I built some time ago.

it can be easily folded to be put in a backpack.

The design was built using the following materials:

Main center frame assembly

  • n° 14 M2x16 hex socket bolts
  • n° 12 M2 nuts
  • n° 8 M2 self locking (nylock) nuts
  • n° 14 M2 washers

 Arm assembly

  • 4 M3x16 Stainless steel bolts
  • 4 M3 self locking (nylock) nuts
  • 8 M3 washers
  • 8 M2x16 (but should be shorter) bolts for motor mounts
  • 8 M2 self locking (nylock) bolts
  • 16 M2 washers

Board mounting

  • various M3 nylon spacers/bolt/nut and M3 polycarbonate screws

Power stage

  • 2730 1300Kw blue wonder from giantshark
  • HK blueseries 12A Esc flashed with simonk firmware,
  • ARDrone propeller set modified cutting the various pins on the back and enlarging the hole to 3mm.

To attach the props i removed the prop saver, inserted the prop on the axle and tied using some thin multifilar fishing line and that works great.

I use it both with 2s 1300 for indoor testing or 3S 2200 for outdoor fun.

Refer to this thread for further information and for asking questions: link to OpenPilot forum

Link to design files

Mini VTail quad

Hi guys.
I have problem with my bigger quad (one esc does weird things raising throttle) so i cannot fly for now.
So It was time (while waiting for my holidays) to finish a mini vtail quad I had in mind for a lot of time.
I is basically built around some 4mm carbon fiber tubing and some kite rubber joints.
I used a 4mm kit and a 6mm kit. The 6mm provied the joint used to hold the four motors while the 4mm was used for the remaining joints used to build the structure.

Here is the base frame composed of carbon tubing and a little glass fiber rectangle.
The rectangle was epox’ed to the tubes after it was tied using some  wire. In the rectangle there are four rows of holes used to let the wire passing through it.

Here is better shown how it is tied.

After the base frame was ready I started to put the electronic on it. Here there are two escs, a simple ditribution board and the CopterControl that will power the Vquad.

In this pictures it is almost complete. all the wirings were done and all is ready for testing motors.

Here is another pictures with propellers. all is wired  (There is also the Bluetooth module i used to configure the CopterControl and test motors  without the need for the usb cable)

Now the last  missing piece is the adapter (a simple 3.3V power regulator) needed to attach a Spektrum satellite receiver to the CopterControl. I hope to finish it tomorrow to be able to do  some flying tests with the newborn VQuad 😉

Edit:

I forgot to put the specs of the quad as is now:

Motors: 4 hxt 2730 rewound as 10turns wye for the two in front (with gws 8×4 propellers) and 10turns delta for the two rear motors (with 5.5×4.5 APC propellers)

ESC: 4 12A hobbyking blueseries

Tubing is 4mm carbon fiber tube (used for kites)

Joints are from 4mm and 6mm kite joint kits

Battery is a 2s 1000mah 25c Turnigy nanotech

Orange Sat Receiver for Spektrum

The weight is a little less than 300gr with battery.

 

Update: Here is a video of the first test done:

Control board for mini quad

I built this mini control board based on MultiWII to stabilize a new quadricopter I’m working on.

This quad will use the common hxt2730 motors (rewound for the propellers it will spin with a 2S LiPo) and will have a V tail tw0 5.5×4.5 counter rotating APC propellers and two gws 8×4 front propellers.

the frame will be made from carbon tubing using kite joints

 

Here is the electronics: in the bottom from left there is the imu and control board. Over the control board there is a shrunk HobbyKing DSM2 receiver

20110619-043809.jpg

This is a zoomed version of the previous.(the quartz was been replaced with an smd one, i was waiting for it to arrive)

20110619-043838.jpg