Shop OBEX P1 Docs P2 Docs Learn Events
Video overlay with prop for the AutoProp8 autopilot - Page 2 — Parallax Forums

Video overlay with prop for the AutoProp8 autopilot

24

Comments

  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-06 03:17
    I hope a lot of you will show up at Parallax's Expo on June 26-27. I will be there with my project and hopefully a flying wing or the quadrocopter to show it off. It's less than 2 months away...
  • mctriviamctrivia Posts: 3,772
    edited 2009-05-06 03:27
    it is the 27-28. I want to come. Just need to sell some non prop related paintball equipment to buy my ticket first.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Need to make your prop design easier or secure? Get a PropMod has crystal, eeprom, and programing header in a 40 pin dip 0.7" pitch module with uSD reader, and RTC options.
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-06 03:31
    Here is a picture of me on camera with the video overlay. You can see the camera near the bottom that's generating the video to get overlayed.
    Also here is the latest code..
  • propwellpropwell Posts: 87
    edited 2009-05-06 13:29
    hey together, pretty impressive work you've done!
    But one question: what is this EL1883-thing, and where can i get it? I don't really understand the schematic of earl, could you help understanding it?

    And is there any chance to use a PAL-Video-Signal?


    Thank you!

    Post Edited (propwell) : 5/6/2009 1:47:07 PM GMT
  • Rob7Rob7 Posts: 275
    edited 2009-05-06 15:27
    Earl,
    Great project. I have been thinking of GPS and Video for location tracking on my trackbot. It is now running with the BS2 and the HB-25 motor drivers. With school there is not much time for research and tinkering.
    I am thinking that with this, it would be a great time to jump into it with the propeller !

    Rob7
  • PerryPerry Posts: 253
    edited 2009-05-06 17:29
    It's sad not to hear from Terry Hitt on this overlay code. The last time I heard from him he was too busy to review what was happening on this forum. I hope this is still true.

    The last revision of his code was version 1.8. I have included it here.

    The later revisions run at the full speed of the propeller. This one runs NTSC/PAL with the parallax graphics driver in double buffered mode.

    Since I ran out of code space because of the double buffering I modified the code to display fewer lines on the overlay.

    Perry
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-06 18:54
    I cant seem to get 018 to work. There is no putstr or putchr in it. Also init is now start. Am I using it wrong ? 012 works fine.

    Ahhh...I see now. This is a replacement for the asm section of 012. Next problem is 018 is setup for pins 16,18,19. I use pin 0 for sync input from the LM1881 and pin 0 for video out. I cant seem to change 018 code. Also, whats in there about VGA. I thought we were using composite video. I dont need color so just 1 video out pin would work.

    Any suggestions ?

    Attached is my 012 code.

    Post Edited (Ole Man Earl) : 5/6/2009 7:22:17 PM GMT
  • PerryPerry Posts: 253
    edited 2009-05-06 19:16
    You will have to use the graphics driver with this overlay code.

    the simple option is to change to 16 instead of 12 for the video basepin.

    remember the CPU is going at half seed with version 12.
    also you only use this driver, dump the TV driver.
    dump the floating point drivers. single precision float does not have enough digits for navigation.

    is the nunchuck not redunant if you use the 6DOF module ?

    do you have a functional specification in your head?
    It seems to me that you have too many peripherals for the small amount of code space on the propeller.

    I tend to look at what is necessary and sufficient to implement a project.

    My OSD was designed for real time display of flight data, it's refresh rate is 10Hz in the hopes that a 10Hz GPS could be used later.

    Take a look at my old OSD project at http://forums.parallax.com/showthread.php?p=721131

    Perry

    Post Edited (Perry) : 5/6/2009 9:47:13 PM GMT
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-06 20:41
    I am hoping prop II will be out soon with more code space.
    I did dump the tv driver.
    lots of sensors for testing right now.

    The problem is not the basepin for the tv. I am not using tv out anyway. The HITT ver 012 driver used pin 0 for the composite sync input from the LM1881 and pin 1 for monochrome video output. That works fine on my program.
    On version HITT 018, The video appears to be generated on vga pins at pal freq's. What I need is to output video like in HITT's version 012 on pin 1 monochrome.

    I must be missing something here.
  • PerryPerry Posts: 253
    edited 2009-05-06 21:55
    I would not expect propII in the near future.

    The 6DOFbinary references TV_Text and TV are you still using them?

    the graphics driver is for both VGA and TV depending on the size of bitmap.

    I could not accept running at half speed.

    Perry
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-06 23:38
    Thanks for pointing that out. It is not used in 6DOF for anything. It was there from amother program. I took it out. Also the t.start(12)
    Saves some space.
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-07 01:24
  • PerryPerry Posts: 253
    edited 2009-05-07 03:12
    Hi Earl
    You should be careful about the indentation of your program code, some mysterious bugs appear if the code is not indented properly.

    Also you could save some more space by using less stack space for subsystems.
    The GPS driver needs only 16 longs. I'm pretty sure the others could use much less too.

    There is a video of my code in action on youtube www.youtube.com/watch?v=OG0eXO5hV6M

    Perry
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-07 04:20
    Here is a summary of the data sent to the ground station via XBee radio.


    !!! start of data sentenance
    SAT:5 # of sats seen by gps
    LAT:34306726 Latitude
    LON:106118222 Longitude
    SPD:1 GPS Speed
    BAR:6548 Baromitor Altitude
    ALT:6441 GPS Altitude
    IAG:55 Inches above Ground
    HDD:0 GPS Heading
    COM:357 Compass Hrading
    ACX:487 Accelerometer X
    ACY:405 Accelerometer Y
    ACZ:759 Accelerometer Z
    GYX:487 Gyro X Axis
    GYY:409 Gyro Y Axis
    GYZ:755 Gyro Z Axis
    *** End of data sentence


    Think I need more or less.The computer on the ground can handle a lot of data. The data is sent at 115600 baud via XBee Radios.

    Any comments ??
  • SRLMSRLM Posts: 5,045
    edited 2009-05-07 05:28
    I'd cut out the GPS speed and heading. Those can be calculated (if necessary) from the lat and long. Also, a variable about the current state of the autopilot might be useful.
  • MagIO2MagIO2 Posts: 2,243
    edited 2009-05-07 06:37
    Hopefully my wife is gone then ... otherwise she will tell me what to do in these 12 hours ;o)
  • PerryPerry Posts: 253
    edited 2009-05-08 04:04
    Hi Earl

    Judging by the number of serial ports you need, take a look at multi serial driver in obex

    4 ports with one cog !!!

    obex.parallax.com/objects/340/

    Perry
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-08 16:43
    I have updated the comments, number of pins used and some code....
    Earl

    Here is the code..
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-10 17:43
    Been doing a little with the OSD.
    Here is some sample code

    Hope someone improves on it !
    Earl

    Post Edited (Ole Man Earl) : 5/10/2009 7:22:50 PM GMT
    1600 x 1200 - 359K
    1600 x 1200 - 325K
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-13 01:37
    Did some updates, fixed a problem with a var being a word and not a long.
    Added ch6 rc rx for another function TBD
    Able to turn on/off rx data display.

    other cleanups

    Earl

    Here is a pic of the ground station via XBee on com 17
    PS: I replaced the ground station XBee pic 5/13/09 because it was out of focus

    Post Edited (Ole Man Earl) : 5/13/2009 8:12:09 PM GMT
    1600 x 1200 - 532K
    1600 x 1200 - 406K
    1600 x 1200 - 392K
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-13 16:56
    I changed the ground station XBee picture because it was out of focus. If anyone is tired of my posting on the auto pilot let me know. I just want to share the knowledge....
  • heaterheater Posts: 3,370
    edited 2009-05-13 17:54
    I'm not bored. This is interesting stuff.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • jazzedjazzed Posts: 11,803
    edited 2009-05-13 19:23
    Video overlay is a nice idea and your artificial horizon and other instruments look great. Too bad you need extra hardware for the video capture. So when you gonna send her up?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --Steve


    Propalyzer: Propeller PC Logic Analyzer
    http://forums.parallax.com/showthread.php?p=788230
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-13 20:16
    The video capture is just a camera on the UAV.
    The camera pics with overlay data is sent to the ground via 900mhz video.
    The GS ground station is a program running on a laptop receiving data from the UAV via the XBee Transceiver on 2.4ghz
    The R/C operates on 72mhz
    Next step is to send new waypoint data to the UAV by XBee.

    Just a reminder...the GS was developed by Jordi and Chris Anderson who won 1st place at the Sparkfun contest 4/15/09. I just modified the ground station display and data acquisition for my needs. I had to learn Labview to do this, although I am not an expert at that yet.

    I have not built the airframe yet. I have all the parts for a 4 foot flying wing and a quadrocopter. I thought I would start with the foam flinging wing first.

    It has taken 3 months just to do the sensor and software first. And the software is not done yet !

    Post Edited (Ole Man Earl) : 5/13/2009 8:26:06 PM GMT
  • TimmooreTimmoore Posts: 1,031
    edited 2009-05-13 20:19
    I think you might have an error in your pressure to altitude calculation. In GetAlt the line
    BaltitudeM := 44330 * (1-(p / 1013)* 1 / 5)        ' Baro alt in meters 
    

    Takes the pressure divides by 1013 and multiples by 1/5. However, on wiki
    http://en.wikipedia.org/wiki/Pressure_altitude
    the calculation takes the pressure divides by 1013 and raises it to the power of 1/5.

    By the way which pressure sensor do you use?
    ·
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-13 20:30
    This is the type of feedback I really need. I am using the xxx500 that was $39. I now find a cheaper and more up to date chip the BMP085 for $10. Both chips program the same and are pin for pin alike. I may switch.

    Thanks , I will try the new update.
  • TimmooreTimmoore Posts: 1,031
    edited 2009-05-13 20:48
    Haven't seen that sensor before, the BMP085 looks interesting. I have used the HP03D (got it from futurlec.com), its about the same price but on a breakout board so its easier to handle but its a bit more difficult to interface
    1. Needs an external clock - I generate it from a prop pin using a counter
    2. Shows up with 2 I2C addresses - one being the same as the standard prop eeprom so you must put it on different pins for the I2c bus
    other than that looks very similar.

    ·
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-13 20:57
    Well math was and is not my strong suit ! How would you do the Barometric altitude (both feet and meters) calk in spin ? (I need the help !)
    What code did you use ? This device is i2c on pins 28 and 29. same as the eprom but shows up as a different address. 0xE7 I think. Anyway, how did you do yours ?
  • HarleyHarley Posts: 997
    edited 2009-05-13 21:04
    On your 'GSdisplay.jpg' shot, I assume you mean 'bearing' rather than 'berring'. Looks good otherwise.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Harley Shanko
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-05-13 21:09
    Ok, I fixed ! I guess I need to add spelling to my list !
Sign In or Register to comment.