All Posts (14056)

Sort by

camera GPS targeting, assisted targeting and stabilisation


Hi,

I have been meaning to write up about this for a while, I have been working on my own project to produce a GPS targeting device aimed at being able to point and target GPS positions on the ground from the air and track them.

I am now at the stage where i have had a (semi) successful test of both hardware and software.

I have also added the ability to change GPS targets on the fly through a windows GUI and using the same code have assisted targeting i.e. you point the camera at something and all pitch, roll and yaw movements are cancelled out. The stabilisation mode just maintains pointing the camera at the ground.

Camera images are streamed live from the aircraft.

The scope for its application is large. for example placement of gain antennas on the aircraft for coms that can keep pointing at a ground station.

The hardware set up I am using is:

*arduimu v2 + magnetometer(to correct for yaw drift and get actual heading and not Course Over Ground)
*ATMega development board
*ATMega development shield
*locosys 10hz GPS
*APC220 for wireless coms
*a wireless camera

The solution I have produced uses two servos configured to move in pitch and roll as opposed to the usual pitch and yaw. this allows the use of a cheap pan and tilt kit, it also has the benefit of not having the problem with the yaw servo not being able to do 360 degrees and cable wrap whilst being able to cover a complete hemisphere of targets.

What i would like to do in the future is integrate my code with the current ardupilot code and also the front end C# mission planner GUI to allow for points of interest way points as well as the current mission way points. First I have to test my current set up a bit more thoroughly, you can see from the video that pointing is not a 100%. I will obviously need to speak to the current guys writing these applications and check that this is ok.

My current top things to investigate are.

*hardware alignment (is the imu aligned with the actual servos)
*actual GPS update rate I have configure 10Hz but it does not seem to be a true 10Hz more like once every 3 seconds)

planned future enhancements to name a few are:

*video overlay of camera target data e.g. range.
*I would love to integrate with eagle tree FPV so that pilot can select targets in flight and secondry camera tracks point of interest.

I will keep you posted and any questions are welcome.

Joe.
Read more…

Vision Based Collision Detection System

images?q=tbn:ANd9GcQx3YQUh1ZDKmVN1INBnMoHwX0i4y_xvBFqpKBJVWlVGUECXjw&t=1&usg=__u2LTyhMys1MPq5obr34naGjAaZk=

So I think we can all agree that a reliable detect-and-avoid system would indeed be the holy grail of the UAV world. The current debacle of UAV regulation hinges on the fact that UAVs indeed would not be able to avoid collisions as they would not be able to sense the presence of other traffic.

With the current technology at hand, it seems to me that vision based systems present the only option for small UAVs due to both cost and weight constraints of radar systems. There are already some research centers that are doing work on this such as these guys:


I am also compelled to start research in this area both due to personal interest and necessity. Having Project Andromeda puts me in a good position where we can develop and test the system on a reliable platform.

I am thinking whether or not an Open-Source version of the same system would be possible. I would set-up the project and provide hosting (most likely as part of the PA website). The target demographic would be people who are interested in digital image processing, SLAM systems and vision based spacial tracking and general robotics.

A great deal of work has already been done as part of the Project Andromeda effort and I will ensure separation of PA code and work done on this project to ensure license integrity (as PA is not under an Open Source license).

Here's a short description of the proposed system:

The picture above is the main camera of the Project Andromeda platform, the Sony FCB-EX20DP.

The PA platform also includes a 1.4Ghz embedded PC with an on-board frame grabber that captures the frames from the FCB-EX20DP in compressed and raw form for transmission to the ground and for processing. The camera is attached to a PT gimbal which allows it to be stabilized. I'm currently using openCV to research different methods.

The proposed system would use a modification of the current Project Andromeda PTZ camera to scan the skies for traffic. It would used dense optical flow fields coupled with feature detection to spot objects moving against the background. It would then use Kalman Filters to track them in 3D space and using mono-SLAM to obtain range values if possible. An alternate version could use a lightweight laser range-finder coupled with the main camera to obtain accurate ranging for objects that are close.

The end result is a system that maintains a repository of objects by tracking them in the surrounding 3D space. The zoom ability allows the system to quickly obtain close-up images of each object. This could either be used to notify a ground-based controller or to match up against an onboard database of objects.

So, this is obviously something I've been thinking about for a while. It could go two ways, I would either develop it closed-source as part of PA, or it would be an open source project that would rely in PA and other similar projects for air-time and reliability testing. The end result would be a Open Source system comprising of the mechanical, electronic and software blueprints necessary for operation.

Is anyone interested in something like this? If you are, or any other thoughts please shout-out below. I'll be following this carefully to see if it's at all feasible as an Open Source project.

Read more…
3D Robotics

Amateur UAVs in the New York Post

cam_drone--300x300.jpg

Classic New York Post: (via Gawker)

"Attack of the Drones

Airborne Eyes Peer at the City

In New York City, someone's always looking down on you.

Low-tech, miniature versions of battlefield drones have come to the boroughs. Only here, they are controlled mostly by hobbyists and photographers, not soldiers shooting insurgents from the sky.

There are only 282 official permits to fly drones nationwide, according to the Federal Aviation Administration. They range from $4.5 million jets that can fly for two days without landing, to hand-launched helicopters that fit in a book bag.

The FAA would not say if any of these permits have been issued in New York City.

But the number of drones patrolling the nation's skies is expected to "explode" if the agency, as expected in December, relaxes restrictions on law enforcement for aircraft weighing 4.4 pounds or less.

Until then, hobbyists are the only people who can launch unmanned aircraft without a permit, as long as devices aren't being used to make money, said an FAA spokesman. They're supposed to fly below 400 feet."

more here....

Read more…

Ardu Gaui Copter

Waiting for my new copter legs I decided to see how the Jani copter could be adapted. The frame fits very well on the Gaui. I still have parts to add to the top but it works. I tried larger motors and 10" props but I need to raise two of the motors for this to work. So the picture shows the standard 10a esc and Gaui motors

Sonar and IR to follow. I liked the esc calibration of the Gaui so I have implemented this in my ardu copter code. This means the copter will not start if you have never calibrated the esc's and after that will not start if throttle is not in the lowest position.

Next job automatic PID adjustment!

Read more…

Hi,

I have been following this site for a while now, I guess it is time to post something myself.
Above is a picture of my latest scratch-built quadcopter running an STM32 ARM processor board with home-brew software. This is my second quad, on the first one (you can sort of see it in my profile picture) I used a home-mode, dual Atmega 328 board.
So far, the quad features the following setup:

  • Aluminium frame "Home-Depot" style
  • Alpha 370 size motors (HobbyPartz)
  • Salvaged 6dof sensor board from a Walkera XUFO 5 (4?)
  • 2-axis magnetometer (I know, 3 axes would make my life a little easier)
  • Maxbotix sonar range finder for low-altitude hold
  • Mediatek LS20031 GPS
  • Modified ADNS2610 optical mouse sensor for low-altitude position-hold
  • Custom software, using ChibiOS RT OS (http://chibios.sourceforge.net)
  • 72Mhz RC gear (Futaba TX, generic RX)
  • XBee telemetry downlink
  • Onboard data logging to SD/MMC card
  • Oh, yes: taped on keychain-camera for onboard video ;-)

Here is picture of the (rather untidy) electronics setup (the Xbee is normally mounted on the inside of the canopy, the mouse sensor and ultrasound sensor are underneath the copter for obvious reasons):



The software features working so far are:
  • Quaternion based attitude representation - tried Kalman filters at first, switched to a more DCM-like approach later
  • Attitude-hold and aerobatic flight modes (can be switched in flight)
  • GPS position hold (activated by channel 6 switch on TX)
  • OR alternatively at the moment: Optical flow position hold via a downward-facing, modified optical mouse sensor with custom optics (NOTE: both GPS position hold and mouse sensor position hold work, but only on a good day - definitely requires more tweaking/PID tuning)
  • Data logging to SD card (not very reliable atm - I do not really use this much since I have telemetry via Xbee)
  • "Ground station software" for data logging and displaying the state of the quad in various graphical ways

The software is written pretty much in straight C, making use of ChibiOS' multithreading. The ground software is a collection of Perl/Tk scripts - all my development happens on Linux.
Below is a video of the quad in "mouse sensor" position hold mode in my driveway - apologies for the terrible video, I will try and shoot a better one soon...

If somebody finds any of this useful or interesting, I am glad to share some more details...
Best,
Marko

Read more…

Indoor Flying Robot (Quadrotor) update

3689370128?profile=original

Thought I would share the progress on our quadrotor, we have done the PID tuning but have noticed in the test rig that it tends to 'rock' to the same side in both pitching and rolling from a straight and level position. We think we can put this down to the way the quad sits in the test rig. Next we look at doing a flight test once we receive our new engine mounts.


For those interested ther engine mounts and baseplate were constructed using a rapid prototyper and are made out of ABS plastic which is quite strong.


Cheers,



Read more…

HELICAL HELL


Tried APC propellers again. Propeller struck ground but didn't bend. Motor broke off mount & propeller struck ESC, damaging something. ESC started smoking. Fortunately we test fly on the golf course instead of a dry field. It's been a long time of occupied storage, but now it's time to trash the APC's.








Finally got operational with the fulltime orientation hold. Next, the helical antenna finally got its show.

It certainly doesn't get as many satellites as the patch. It hasn't had any sudden glitches yet, either. It has a lot more of a random walk & seems to lag more.








The main difference with fulltime orientation hold is the lower D gains possible. That reduces the amount of oscillating. The human controlled cyclic needed such high D gains it always oscillated. The only option for full cyclic was different gains when in full autopilot.

We're not entirely crazy about fulltime orientation hold any more than basic cyclic. Now there's a very narrow limit to angle of attack because our accelerometer only does right side up. It needs a bit of margin to keep from going over 90' & flipping.




















Read more…

Elevator Gain Tuning

One of the most challenging aspects of autopilot setup is tuning the gains for a particular airframe. When the gains are tuned poorly, the aircraft my oscillate excessively, it may lag way behind the target pitch angle or roll angle or velocity, it may never reach the target values. Poorly tuned gains could destroy an airframe in a worst case scenario, but often people just live with non-optimal gains that aren't great but work well enough to get the aircraft around the sky. It's hard to know what gains to tune and why and a person could play with the numbers all day and only manage to make things worse. It's easy to spot a problem; often the aircraft will look like it is fighting itself even though it does make it's way to where it should be, or it just may not do what you ask it to do.The first half of the attached movie shows an example of badly tuned elevator gains, I make some simple improvements and then show the results. It's a windy day so don't expect perfection, but at least from the ground it looked rock solid.I have some more details and a link to PID controller tutorial I wrote a few years ago. Included in the tutorial are some different strategies and tips for tuning PID controllers.http://www.flightgear.org/blogs/curt/uas/telemaster/elevator-gain-tuning/
Read more…

Landing patterns and reverse thrust!


I don't know how long of a distance it takes for most of you to land, but when diving in below the treeline from 200 feet I pick up tremendousspeed on my EasyStar to the point of hitting 50 mph and overshootingthe runway, ending up in the trees.

Of course I can land in 500 feet easy, but making my autopilot do it wasnot. I was curious if anyone wanted to chime in on how they solvedtheir landing issues and minimizing the length of space required.

I was able to get mine down to 500 feet diving in from 200 feet and leveling off. The attached photo is my landing pattern.

1) Circle the landing zone, sample the winds
2) Go downwind
3) Turn for final approach
4) DIVE! with a feedback loop on airspeed able to do reverse thrust
5) flare and land.

My reverse thrust is done with a car speed controller. I can get +1 lbthrust as well as -1 lb of thrust. (Wasn't expecting that either.) Thisis just by running a typical 5x5 prop backwards!

The end result is that I slow down from 50 mph to 20 mph in a few seconds after the dive.

Read more…
3D Robotics

Just got my AttoPilot 2.0

AttoPilot International has a sweet deal for current AttoPilot 1.8 owners: just $300 to upgrade to 2.0. Why do it? Well, just look at this picture. That's some pretty amazing miniaturization! Smaller even than ArduPilot without its shield. Plus the AttoPilot folks upgraded my 1.8 unit to 2.0 software (actually, they did even better--they replaced it with new hardware because it was broken), so now I essentially have two 2.0 units. Best customer service ever!

Read more…
3D Robotics

DIYDrones at 11,000 members

The growth here is accelerating. We're now adding 1,000 members every 8 weeks and hit 11,000 today. On an average day, this site does between 25,000 and 30,000 page views. We're closing in on 1 million page views per month.


I had lunch today with the executive team of Ning, the social networking platform we're based on. Features coming out over the next several weeks include:

  • WordPress-style blogs. Much better authoring tools and design flexibility in the blogs, and across all text entry areas.
  • Badges and better community feedback options for content. Thumbs up/thumbs down rankings, and the ability for community stars to emerge and get recognition. "N00b Ninjas" FTW!
  • More design flexibility. The fixed-width columns and fixed-width overall site will soon be a thing of the past.
  • Improved Leaderboards. We'll be able to get much more granularity in figuring out what and who is popular here, so the moderators can spot and reward great contributors more easily.


Read more…
Moderator

3689369811?profile=original

The incident report on this one should be really interesting.
From the official military press release.
Admiral Sandy Winnefeld, who oversees the country’s air defenses, said the August 2 incident presented senior officers with an unprecedented dilemma, as a robotic Fire Scout helicopter strayed off course after losing ground communications.

“We were watching this very closely,” said Winnefeld, head of US Northern Command and NORAD, the joint US-Canadian air defense command.

“It’s headed right for the heart of the national capital region,” he told defense reporters. “Do you let it run out of gas and hopefully crash in a farmer’s field or do you actually take action to shoot it down?”

“You certainly don’t want to shoot it down over a populated area if you can avoid it.”

The North American Aerospace Defense Command was on the verge of scrambling F-16 fighter jets to intercept the helicopter when operators regained control of the chopper after 20 minutes.

Read more…

Ardupilot goes into the water Part 13

Long time - no sea.

If anybody will tell me about global warming - i will kill him!
We had the coldest (and rainiest) may and june ever.

And August was - the rainiest ever.


Globalization only seems to work in the financial domain, but not for the weather. What about a "weather-transfer" of bad weather to the sahara? They will appreciate the rain there. Despite this fact and the passing away of a close relative, i wished, these months had never happened.

In mid-july, we have seen that this spherical fusion-reactor some eight light-minutes away is still running. I am personally not a fan of nuclear energy, but in this case...

What happened since my last entry?
Not really much.

The new cat has now the same color on both hulls.
The board, that holds the hulls together is now coated with fiber and epoxy to make it more rigid.
The extra battery for the sonar was dropped. The power comes now from the main battery. (-300g of weight)
The cable from the sonar to the transducer was shortened (-100g)

This was really not much, but there are still some challenges out there...

Swimming is not one of my favourite disciplines.
Swimming in bad weather conditions does not even make it better.
Swimming is OK, considering the following conditions:

1. It is summer (I mean that season, when it should be really warm)
2. You have enough time to put on your swimming suit, when the boat starts to react weird.
3. You love swimming
4. No rain

if any of the above is not applicable, staying on the shoreline is the better option.

Swimming is usually caused by:

1. Software
2. Mechanics and Hardware
3. Personal idiocy
4. A combination of the above


To prepare the this year "PID optimization campaign" i decided, to reduce my recovery-swimming exercises to a minimum and thought about Radio Control.

First, i fiddled with my 27MHz RC control from the Jetski model, but found out that this thing is abolutely crappy. Bad range performance, noisy and most of all: no failsafe behaviour. I wanted the software on the ardupilot to decide, whether there is a transmitter controlling the ship or not. And therefore i have to measure the pulses comming out of the Receiver. So far so good, but the 27MHz Rx outputs always some pulses, regardless, if the Tx is on or off (the good old analog era...).

I remembered, that the Ardupilot was originally conceived as a fail-safe
system with an RC option as a fallback for the safe launching and landing
of an airframe.
Why not using this feature for the boat?
Reading the docs and the software showed, that the implementation, which is
in the original version of the Ardupilot was not exactly what i needed.

My requirements were:

1. If the transmitter is OFF or the Receiver is out of reach, the boat shall
be fully controlled by the Ardupilot.

2. If the Transmitter is ON, control shall be passed to the Radio control.

Implementation on the original version was a little bit different,
so i decided to do it my own way.

How to detect if the RF is good or bad?
The only way is to look at the servo pulses, that come out of the Receiver.
Analog RC Systems output always something on the servo channels, even when the Tx is OFF. (see above)
Discrimination between noise and a good signal would be possible by some weird SW algorithms, but i wanted to keep it simple.

A very old friend of mine, who is an RC Dinosaur told me to buy a 2.4GHz RC control.
So i ordered a SPEKTRUM DX5e, which is a fairly priced entry level model.
Reading the manual showed, that the failsafe functionality of the receiver was exactly that what
i needed. Manuals sometimes do not tell the truth, so i oscillographed the servo outputs and found, that
they really told the truth:

1. When the receiver is turned ON without a Transmitter beeing in the air, there is silence on all servo outputs - good.
2. When the Tx is turned ON and the Rx is correctly bound to the Tx, pulses on all channels - good.
3. When the Tx is switched OFF, silence on all channels, but not on the throttle. The throttle channel outputs a pre-programmed default pulse-width. - still good.

From the software point of view, it is very easy to distinguish between silence and "something". So i took the rudder channel to sense the RF.
(Tx ON --> pulses, Tx OFF --> silence)

Technically, all worked fine.

right in the middle: the Receiver.

I have put the code here:


Please note, that the Hardware of the Ardupilot board has to be
modified!
Read the comments in the RC_Control tab.
I have refactured some of the code and added some comments.
WITHOUT testing it. Take the code as a starting point for your own
experiments.


Thats all for today, on the next episode i will tell the experience with the RC control on the lake and why i decided not to use the RC any more.

Read more…

Aerial Photography with a Trex 700e

3689369500?profile=original

Hi, as my first blog post, I'd like to share with you my vebtures into aerial photography with a Trex 700e. I started out using an Orb 96" pusher plane to carry my camera, but soon realized it was impractical for operating around a highly congested city

I finally went with a Trex 600 ESP, stretched it to a 700e and mounted a canon 50D.

thanks

Matt


Read more…
3D Robotics

Large Aerial UAV Swarms


More goodness from the Laboratory of Intelligent Systems at EPFL in Switzerland: 10 Zagi-style UAVs autonomous flocking at the same time. From the write-up:

3689369676?profile=original"Swarm Algorithms
Designing swarm controllers is typically challenging because no obvious relationship exists between the individual robot behaviors and the emergent behavior of the entire swarm. For this reason, we turn to biology for inspiration.

In a first approach, artificial evolution is used for its potential to automatically discover simple and unthought-of robot controllers. Good evolved controllers are then reverse-engineered so as to capture the simple and efficient solutions found through evolution in hand-designed controllers that are easy to understand and can be modeled. Resulting controllers can therefore be adapted to a variety of scenarios in a predictable manner. Furthermore, they can be extended to accommodate entirely new applications. Reverse-engineered controllers demonstrate a variety of behaviors such as exploration, synchronization, area coverage and communication relay.

In a second approach, inspiration is taken from ants that can optimally deploy to search for and maintain pheromone paths leading to food sources in nature. This is analogous to the deployment and maintenance of communication pathways between rescuers using the SMAVNET."


(Thanks to Sabine Hauert for the tip)

Read more…
3D Robotics

ArduPilot Mega back in stock!

Our long national nightmare is over: The ArduPilot Mega main board is back in stock. Sparkfun has 164 on hand, and more will be built as these go. The IMU shield is also in stock at the DIY Drones store, as are both the MediaTek and uBlox GPS modules. So basically everything you need is now available.


The code is in good shape in Alpha release (SVN only) and is being flown regularily. It will be released in public Beta (zip file) for less expert users by the end of Sept. The ArduCopter branch is also flying well, and should be ready for the commercial release of the full ArduCopter kit in about a month.



Read more…