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...
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.
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..
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?
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 !
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.
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
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.
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.
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.
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.
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.
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.
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
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....
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?
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
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.
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.
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.
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 ?
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
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.
Also here is the latest code..
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
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
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
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
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
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.
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
Saves some space.
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
!!! 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 ??
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
Earl
Here is the code..
Here is some sample code
Hope someone improves on it !
Earl
Post Edited (Ole Man Earl) : 5/10/2009 7:22:50 PM GMT
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
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--Steve
Propalyzer: Propeller PC Logic Analyzer
http://forums.parallax.com/showthread.php?p=788230
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
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?
·
Thanks , I will try the new update.
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.
·
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 ?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Harley Shanko