All Posts (14056)

Sort by
3D Robotics

A fun analysis by Sparkfun on the world domination of Arduino over the past couple years. More people are searching for it than even the once-dominant Microchip (maker of the PIC chips). No wonder that Sparkfun reports that: "Microchip wanted to meet with us because they were interested in creating an 'Arduino' like board using a PIC processor. Microchip finally began to understand what it means to get people early, and using their hardware, and Microchip was sensing (rightfully) that they were losing market share to this thing called Arduino. "
Read more…
Admin
Hi Guys, This guy(jago_svensson, alias Heliman) knows his stuff. He is using FMA sensor but could not see what AP if any. Now if his camera mount can take care of vibration for high zoom digital camera , it surely must do some good for the AP gyro issue IMHO. Just wanted to bring it to notice for DIY gang, especially to heli guys who want to use AP here( have trouble with gyro saturation) that that there is a Hope. Feel free to browse his gallery to see the quality of photo, the point being the stability and quality which translates into less vibration for me/us. here is the close up of his vibration damper DIY stype. Very impressive for DIY homemade stuff :)) For the copyright info>This photo belongs to "Heliman"

index.php?md5=6416d100f0c7cc72c38a4c1e8303ebca&username=arialphoto&fl=L3Zhci93d3cvYXJpYWxwaG90by9oZWxpL1AxMDQwMDc4LkpQRw==

Other info; Heli - Trex 600 EP Camera : Pentax ( atleast one pic shows it) but mount looks good for any digital video cam battery and other stuff is mounted below tail boom on a small plate mounted on tail boom support struts. Camera Dampers: Unknown brand rubber boots ( 8 that i saw) Thanks Jago ,good job and great photos Morli
Read more…
T3

3km long linear photo stitch

Over the fields.Terminated by fully automated approach loop, as on all my flights (no reason to get nervous anymore).Used 7 waypoints for landing loop and 3 waypoints for the mission itself (overhead 200m agl, remote fixed position at 200m agl, overhead 200m agl then landing).Shoting interval 4.4s, Sony Webbie (that long shoting interval is uncomfortable at lower altitudes for planes flying around 50km/h - photo overlap suffers).Used around 50 photos out of 120 taken (only one direction, all resized down),all in order to save processing time.

Starring:FLEXIPILOT and EasyUAV
Read more…
Hi all,attached is example of ArduPilot Ground Station that logs KML data, as well as displays plane path during flight. (plane icon is current position and flight path is yellow with green bars, but I have lot's of data packed so it's hard to see green in the attached pic).

There were mentions in couple of threads about desire for GPS / kml logging and some more general purpose logging as well. While back I modified original GS LabVIEW code to include KML logging...My personal GS (test) code looks a bit different (different architecture, etc.) but in attached example I added functionality to Jordi's code....It can be easily adapted to Mike Black's modified GS LabVIEW code as well. I left everything else "as is" so to preserve familiarity/look-feel of the code....For people with LabVIEW development environment:-Copy paste attached files into your groundstation directory (groundtest-kml_mod.vi , KML-Compose.vi, and NetworkLink file)-NetworkLink file will be overwritten so you might want to back it up (just rename it)-Don't worry about flight.kml file as we will use flight-test.kml file-Start groundtest-kml_mod.vi ( instead of groundtest.vi as you would normally do)For people without LabVIEW dev environment:- sorry :( - you'll have to wait untill someone from 'Ground Station Dev group' compiles the files and include them into repository . I don't have access to depository and am using LabVIEW 8.5, while everyone else (i think) uses LabVIEW 8.6 - it would be just too big of a mess to keep up with dev version control so I'll leave it at "GS people" to compile the code and include it (if they so desire)Note lat, lon, and alt data is logged into flight-test.kml file - It will be rewritten every time you start ground station...so If you want to preserve file for future use, after you are done with flight, copy or simply rename the file.kml file will look something like this:

In the attached file lat and lon is not changing because that's the time frame while plane was sitting on the runway.Attached files show basic example of GPS / kml logging that suited my needs. Expending this file, or creating more specific data log file is fairly trivial and can easily be done.NetworkLink.kmlgroundtest-kml_mod.viKML-Compose.vi
Read more…

Barometric altitude sensor equations

I have attached an Excel sheet that I made with the equations needed to design a barometric altitude sensor.


For lower altitudes and for small altitude deltas, one can assume that there is a linear relationship between pressure and altitude. Please see the attached Excel sheet for more details.

The SCP1000 pressure sensor seems like a very good candidate for a pressure sensor:
http://www.sparkfun.com/commerce/product_info.php?products_id=8161


The manufacturer gives these data:

Resolution: 3 Pascal (the fineness to which the sensor can be read - nothing to do do with the accuracy)
Relative accuracy (how close to the real pressure the sensor measurements are) over temp range +10C to +40C and 600 hPa to 1200 hPa: +/- 50 Pa. (It is not given in the datasheet if this is sensor to sensor or for the same sensor)

The manufacturer does not give noise data. However sources on the Internet may indicate that the sensor has an inherent noise of +/- 50 Pa.

Datasheet: http://www.sparkfun.com/datasheets/Components/SCP1000-D01.pdf

Sample code: http://www.sparkfun.com/datasheets/Components/SCP1000-D01.pdf

Another guy using the sensor for a variometer for paragliding: http://www.pixelproc.net/varios.html

The noise may be filtered out using an averaging filter however. Even a kalman filter and two sensors may be used.

baro_height_measurement_unit.xls

Read more…
Moderator

For Atto users

This gets ever more grown up, well worth a look......Here is our unofficial and unauthorized Attopilot-compatible GCS. It is free and open source, and features:Standard "T" flight instrument layout.Standard aviation industry units.Over twice as fast as the official GCS replaying log files, and a similar level of performance improvement with live telemetry.Integrates with Google Earth to provide realtime UAV tracking.Generates time-stamped KML files from live telemetry or log files (or parts thereof).Smooth, precision graphics with simulated instrument inertia to enhance readability and reduce operator fatigue.A useable attitude indicator - fast and smooth.High-contrast colours for outdoor use.Adjustable font sizes, zoomable display.Tightly integrated with the Failsafe PTZ, providing joystick control of pan, tilt, zoom and trigger.Able to continuously monitor telemetry link integrity.NEW: Speech synthesis for enhanced situational awareness - watch your UAV instead of a computer screen.NEW: Choice of metric units. Can even have a combination of aviation and metric units.http://www.millswoodeng.com.au/fd_gcs.html
Read more…
3D Robotics

Ten tips for getting your Makerbot to work

So, my Makerbot is now working. It took some doing. My first complete build is shown--a Darth Vader helmet, which worked pretty well for a first try. But as you can see, I've still got some tuning to do.

In the meantime, here are ten things I learned the hard way getting to this point (some of them because of changes in the Makerbot hardware in the latest rev, some because of problems in the documentation and some because I'm an idiot): 1) Unbelievably, I didn't notice that the motherboard has an on-off switch. It just controls power to the stepper motors and extruder head, and as far as I can tell it's not mentioned in the documentation, but if you don't turn it on, nothing will happen other than LEDs lighting on the motherboard. 2) Most of the endstop slots (for the sticks that are supposed to go into the optical endstops when you hit the end of the travel) are in the wrong place. Don't worry about it. You actually don't need or even necessarily want to use the endstops, since it's best to center the head manually. 3) A lot of the default settings in Skeinforge, which creates the g-code version of the 3D model that tells the printer what to do, are suboptimal for the Makerbot. The settings suggested in this post are much better. 4) The new Makerbots (Batch 9) have a 1mm thermister as a temperature sensor. Previous batches used a 3mm thermister. The new, smaller one has a totally different temperature response curve, and as a result the default settings will leave the head not nearly hot enough, which leads to all sorts of problems, from clogged heads to builds that don't stick to the build table or even to themselves. Basically, to get the recommended 220 degrees Celsius, you've got to set it to 240, and all the other settings should go up by about 20 degrees. Until Makerbot releases new pastruder firmware, you should change the temperature settings in Skeinforge's Raft settings. Here's the new recommended settings, courtesy of Andrew Plumb: "The default "3mm" thermistor settings are as follows: Temperature of Raft: 230.0 Temperature of Shape First Layer Outline: 215.0 Temperature of Shape First Layer Within: 215.0 Temperature of Shape Next Layers: 220.0 That final "Temperature of Shape Next Layers" is what sets the temperature for the majority of the build. You can probably get away with simply adding 20C to all those numbers; 250.0, 235.0, 235.0, 240.0. Aside: Make sure all the "Temperature Change Time Before ..." numbers are 0.0. If they're non-zero you get long pauses that don't seem to help much with MakerBot builds." 5) You may have trouble getting the build to stick to the acrylic build platform, especially if you're running at lower temperatures than you should. The first thing you should do is to sand the platform, to create a rough surface. If that's not enough (it wasn't for me), spray the surface with 3M "Super 77" spray adhesive. One application should do it! 6) Spraypaint your Makerbot before you build it! I sprayed mine matte black and it looks way more industrial chic than the naked plywood versions you see everywhere. One can should do it, with about three coats. You can touch up the smaller bits with a brush after assembly. 7) ReplicatorG is the main control software. Before you start doing any builds, get very familar with its control panel. You can move the heads, set the head temperature and extrude plastic via the control panel, which is a great way to test your hardware. I found that both my X and Z axis were inverted, which I could correct via ReplicatorG's settings. 8) You may get confused by what "home" means. I kept putting the head in the middle of the build tray and pressing the "set zero" button. Then I was confused when I'd do a build and the head would go to the end of its travel and jam out. Turns out that "zero" is the far extreme of all the positions (I guess that would be full left, down and front), following Cartesian coordinates. The best thing to do is ignore the "set zero". Just use the arrows to put the head at the center of the build platform, using the Z arrow so the head is almost touching the platform, and start your build. The machine will figure out everything else. 9) You may still get clumps of plastic on the surface of your build while it's printing, which become hard protrusions that deflect the head and can mess up your calibration (as happened in the lower layers of the Darth head above). I'm not quite sure what to do about that. I'll update this when I come up with a solution. [UPDATE: Andrew Plumb suggests: "In the Skeinforge Speed preferences I have "Feedrate (mm/s)" set to 24.0. I think the default is something like 26.5"] 10) When it comes time to upgrade your firmware, either for the motherboard or the plastruder board, get ready for a funky trip down the side alleys of Arduino derivatives. The boards are actually Sanguino (they're red--sang--not blue like the Arduino boards), and need you to load some Arduinio extensions and libraries before you can compile and upload code. It's a hassle to find all the right ones, so be prepared for some digging around online. Perhaps the Makerbot team will release binaries and some utility that can upload them automatically? A guy can hope...
Read more…

Working as a BYU electronics shop tech, I occasionally get to help out the guys at the MAGICC lab. A PhD student came in a few weeks ago with a problem: He wanted to make an Alpha-Beta probe. Encoders of the accuracy he wanted are too heavy and too expensive to put on a 5 pound flying wing, and the multiple Pitot-tube option was not his game to play either, so he was wondering if we could make encoders like the big expensive ones he was looking at, except for being big and expensive.I got to thinking about P-factor in flying tail-draggers and high AoA flight: Props that are presented with a relative wind that is off-normal to the plane of rotation produce asymmetric thrust. Using that principle in reverse, small pager motors could be mounted to a Pitot-probe, each offset by 90-degrees. It is possible to work up different configurations, redundant placements of similarly oriented pager motor "generators" and the like, but the basic idea is that as long as the props on the pager motors are uni-directional (no camber/bias for rotation in forward verses reverse), and as long as the props are kept out of dirty air or asymmetric dynamics due to the Pitot-probe, these should make a simple Alpha-Beta measurement system.As to taking the measurement: My hunch is that the ratio between the potential differences made by the motors resolves the alpha and beta components of the airflow. That or the current generated when a load is place accross the terminals of the pager motors.So has this been tried before? What are some issues?
Read more…
Developer

Ardupilot 2.5 preview part 6

New in Ardupilot 2.5 is mission simulation/debugging. First load a mission using the config tool and make sure you select "Set Manually" in the home info area on the left.Then, in the header, set the value of Debug to 1 and upload 2.5. The mission will begin as if it's already in the air and will start outputting telemetry. If everything is OK, the plane should make each waypoint and end up back at home in a Loiter pattern.This is also a 3d simulator, so altitude will be monitored as well. In future releases, specific waypoints can have altitude requirements to meet before the plane can move to the next WP.Tweaking the SimThere are two values to make the simulation more realistic for your plane. First is turn rate. This is a basic value that indicates how fast your plan turns. Higher values means faster turning. The idea is that at 90° the plane will turn 55° per second. This isn't realistic, but if you know how fast your plane will turn at thirty degrees you can just multiply that x3 and you'll have a good value.est_turn_rate = (roll_sensor * TURNRATE * (long)deltaMiliSeconds) / 90L;The next values are#define CLIMBRATE_UP 1000 // (meters * 100) how fast we climb in simulator at 90°#define CLIMBRATE_DOWN 3000 // (meters * 100) how fast we drop in simulator at 90°Again, these values are just to make the math easy for me ;) Adjust to suit the rate of climb for your plane.Ok, that's it!Jason
Read more…

XMAS BAY, XMAS GOLF 4 U, DEATH BY MARCY 1

XMAS BAY 4 UHad the best weather ever on an XMas. Totally clear, no wind & warm inland.Being the only day you can traverse the MacArthur maze in 1 day, took some snaps above Emeryville.

Moon over Berkeley.

Don't think we've ever seen such a flat calm. Like a millpond. It will make it harder to see the bergs.Finally the movie. Whenever you stop flogging GooTube with your family XMas videos, you'll get a transcoded flight movie.Product links in this post:Professional image stabilization software: http://heroinewarrior.com/Professional UAV: http://vicacopter.com/XMAS GOLF 4 USince no-one plays golf on XMas, had a chance to use the golf course for what it was intended for: flying. That's us in our favorite flight test range.

DEATH BY MARCY 1The Marcy 1 boards are killing us. Mainly everything except the ESC is done from scratch on 1 chip to minimize weight & not commercially sourced. You have to make the radio, the position sensor, the PWM generator, the AHRS, the camera, all from scratch.The radio library must be ported from its successful test harness to the flight hardware. Discovered the SPI pins need to be set to the right modes just to get an SPI interrupt.Next, the USB library which served us well through Vika 1 stopped working on both the Marcy 1 ground station & a new Vika 1 ground station using a crystal.

Finally swapped the crystal for a tried & true oscillator & it worked. So USB works with full 48Mhz oscillators but not 12Mhz crystals + 4x PLL. Everything's leading to the traces not being symmetric & somehow causing a lopsided oscillation or maybe an unstable oscillation. The capacitors are exactly symmetric on a commercial board.

Read more…
Moderator

Worth a Christmas day look

getAsset.aspx?ItemID=28591

http://www.flightglobal.com/articles/2009/12/25/336604/top-ten-picture-stories-of-2009.htmlI found Uncle Rogers quiz way too hard this year.http://www.flightglobal.com/articles/2009/12/21/336433/uncle-rogers-christmas-quiz-2010.htmlDownload your free Vulcan poster, and read about display flying the Tin Triangle, they used to rush through the hills around my parents home, just too cool.http://www.flightglobal.com/articles/2009/12/22/336324/tin-triangle-display-flying-the-vulcan.html

getAsset.aspx?ItemID=32128

I just realised I have been reading Flight for close on 40 years!! Flipping heck.
Read more…
Developer

Ardupilot 2.5 preview part 5

Merry Christmas everyone.I wanted to talk about a new aspect of 2.5 that enables coders to easily program missions through a simple API. The main idea is that many common events are sent to functions in the event.pde file to be handled by you in any way you see fit. You can do anything and access any variable in the system - within reason. The events.pde file can be swapped out with a different mission and uploaded to the the hardware.The first and most important event is the switch_event. This event is called when the 3-position switch on the radio has changed. The function set_mode(MODE) is called and the argument is one of the following flight modes:MANUAL - complete radio controlSTABILIZE - uses IR sensors to stabilize the aircraftFLY_BY_WIRE - allows the user to "steer" the aircraft using autopilot control loopsAUTO - exactly what you thinkRTL - Fly home nowLOITER - Circle around current location (set when aircraft arrives at home during RTL)An example of setting the current waypoint back to the index 1 is shown when the switch is in manual position.
void switch_event(byte switchPosition){        switch(switchPosition)        {                case 1: // First position                set_mode(MANUAL);                // this is handy function to restart your mission:                reset_waypoint_index();                break;                case 2: // middle position                set_mode(AUTO);                break;                case 3: // last position                set_mode(STABILIZE);                break;        }}
The next most important event is a waypoint event. There are a few basic events called (more will be added as necessary.) In the example below Loiter mode is turned on when we load WP 3. The variable elapsedTime is set to 0 ( elapsedTime is a user defined timer that increments in milliseconds.) If you want to stop Loitering after a set number of seconds, see the next example below.
void waypoint_event(byte event){        switch(event)        {                case EVENT_WILL_REACH_WAYPOINT:                        // called just before wp_index is incemented                        Serial.print("Reached WP:");                        Serial.println(wp_index,DEC);                        break;                case EVENT_SET_NEW_WAYPOINT_INDEX:                        // called just after wp_index is incemented                        Serial.print("Now going to WP:");                        Serial.println(wp_index,DEC);                        break;                case EVENT_LOADED_WAYPOINT:                        // called just after wp is loaded from memory                        Serial.print("Loaded WP index: ");                        Serial.println(wp_index,DEC);                        print_current_waypoint();                        // custom loitering code                        if (wp_index == 3){                                set_mode(LOITER);                                elapsedTime = 0;                        }                        break;                // called when the pattern to be flown is automatically restarted                case EVENT_LOOP:                         Serial.println("Looped WP Index");                        print_current_waypoint();                        break;                  }}
The mainLoop_event is called with every execution of the control loop. Here is a good place to check the elapsedTime variable to escape Loiter mode and continue on with the mission.
// called AFTER every control loopvoid mainLoop_event(void){        if (control_mode == LOITER){                if (wp_index == 2 && elapsedTime > 120000 ){ // 2 minutes                        elapsedTime = 0;                        // our waypoints index is not altered during LOITER                        // All we need to do is reload the waypoint                        load_waypoint();                        // and return to Autopilot mode!                        set_mode(AUTO);                }        }}
Other events include:void gps_event(void)void low_battery_event(void)void failsafe_event()More will be added as necessary, and of course, you can add your own.JasonNext installment - The Mission Simulator
Read more…
Developer

ArduIMU v1 hardware users - Firmware help

It just came to my attention that people trying to use the latest revision firmware with the older ArduIMU hardware were having problems. The current revision firmware has lots of goodies in it that the pre-v2 hardware firmware did not have such as much better vibration resistance, euler angle output, binary message output for Ardu-IMU-Pilot, etc. We had included code in recent revisions to allow use of either hardware, but I guess neither Jordi, Jose, or myself had checked it on the v1 hardware.There was an error in the sensor_sign[ ] declaration. It has been corrected in revision R19.If you have had trouble downloading all the individual files of the latest revision source code I have added a zipped download file of R19. To select between v1 and v2 hardware you need to pick one of two pairs of of declaration lines to comment out at around line 53. They are commented so you can see which you need. Just place the // in front of the pair you do not need....
Read more…
3D Robotics

Finally, a working Osprey-like RC model?

GAUI TG-609 from Michael Yang on Vimeo.

The civilian version of the Osprey V22 tilt rotor is the TG-609. Such a vertical take off, fixed wing flight platform has long been a UAV dream, but it's proven too tricky for RC modeling to date. Now Gaui seems to have cracked the code. After more than a year of development, mostly on working on the transition from heli mode to fixed wing mode, it appears ready to release the plane. The above video gives a sense of how it will fly; although it doesn't show full fixed wing mode yet, it's at least half-way there. It's not for sale yet, but apparently Empire RC will be the distributor in the US. I'm not sure this is the ideal UAV platform, due to limited payload capacity and very sensitive CG. But if you want something with the launch flexibility of a heli and the duration and flight effeciency of a plane, maybe this is worth checking out. Here's a bunch of pictures of the aircraft on the ground and in flight.
Read more…