|
[DPRG] progress on Hough transform and small robot
Subject: [DPRG] progress on Hough transform and small robot
From: Kenneth Maxon
kmaxon at qwest.net
Date: Sun Jan 21 01:42:56 CST 2007
Hey Chris, (and group)
Good to hear you are making progress... I have made a massive amount of
progress on my own off road robot project, that we discussed (offlist)
previously. I've deviated from the full sojourner implementation to build a
quick and dirty platform to get me running around the back yard. I also
have taken the time to build in a lot of extensions / expansion so that it
can carry my vision boards and other experiments later... Any who, glad to
see the progress.
As for hacking a pre existing chassis, more power to you, do what it takes
to get it moving and attacking the problem of robotics. Sure designing and
building is 1/2 the fun, but so often it stops people from actually getting
to do motion control, solving navigation problems, solving vision problems,
sensor data integration problems and so many other real robotics problems
rather than construction...
I thought I should share a few CAD projections of the parts that I've been
making / buying for a few weeks now (since mid-December) I hope to have the
beast fully running (or at least ready for more advanced software.) By the
end of Feb. (I had a few setbacks with extra company travel and problems
with a recent small surgery that caused me to loose some working / playing
time so I've had to re-estimate the operational status date.
Mechanically the design is very simple and I only have to manufacture about
20 pieces. They could have been done very quickly on a table saw, and hand
drill in hard wood, but I want to keep and use this for experimentation and
other pieces later so I'm machining aluminum and steel now...
My web site is down except for this single page and the individual images
that follow:
http://www.users.qwest.net/~kmaxon/controlbox.htm
http://www.users.qwest.net/~kmaxon/protobot_mech_dim1.gif
http://www.users.qwest.net/~kmaxon/protobot_mech_dim2.gif
http://www.users.qwest.net/~kmaxon/protobot_mech_driver.gif
http://www.users.qwest.net/~kmaxon/protobot_mech1.gif
The gearboxes are premaid, the motors & encoder assemblies are pre-made, the
sprockets and QD bushings are pre-made, the bearing block assemblies are
pre-made, I had a bunch of the pieces of acrylic laser cut to speed up
production, so I am following some of the same thoughts you are, trading off
full custom design for getting something running quicker...
I really haven't had time to snap pictures of all the parts (okay I did but
they didn't turn out and I need to re-take them) so You'll probably see
postings of the entire thing assembled before you see the stack of parts
photos... The longer piece in this development will be the wiring for all
of the later functions added as afterthought projects (feature creep) after
the basic chassis is ready to roam the neighborhood.
-Just thought I'd share -Kenneth
-----Original Message-----
From: dprglist-bounces at dprg.org [mailto:dprglist-bounces at dprg.org]On
Behalf Of Chris Jang
Sent: Sunday, January 21, 2007 1:25 AM
To: dprglist at dprg.org
Subject: [DPRG] progress on Hough transform and small robot
Hello,
The basic Hough transform code works but is even less reliable than the
object recognition of soda and beer cans. It needs work.
http://golem5.org/embedcv/images/hough.jpg
The bright points in the Hough transform image correspond to the detected
red lines in the (histogram equalized) edge image.
One thing I've noticed in real world images is that horizontal edges tend
to be much stronger than vertical or diagonal orientations. My theory is
that this is an optical effect. Horizontal edges tend to remain within the
camera's depth of field under even lighting.
I'm also starting to think that thresholding the Hough transform of a
Sobel edge image is too difficult. The algorithm is very sensitive to
noise and does not reject it very well. Better edge detection than vanilla
linear convolution is required.
Another thing I'm going to do is test EmbedCV on a 1/12 scale RC car. Here
is a picture of it.
http://golem5.org/embedcv/images/littlebro.jpg
It cost $15 (unsold Christmas product) and has full suspension (not much
travel but all four wheels are sprung) and a rear differential. There is
no PWM and steering is full deflection bang-bang. The wheels are rubber.
It is just wide enough that a PC 104 SBC can fit inside the body. I'm
thinking of the Technologic TS-7260 ARM9 board. The battery pack voltage
is stable enough that I think everything can run off the same pack without
isolation between the motor drive and digital electronics. A notebook
webcam attached to the roof provides a camera.
This toy is small enough to fit in a shoebox and so can run on the DPRG
warehouse course area. It's big brother is about 10x heavier and barely
fits in the trunk of my car. I have not been able to make much progress
with it as the logistics of testing are involved. I'm hoping that less is
more and this smaller robot allows for accelerated development.
One thing that amazes me is how much faster buying off-the-shelf is. It
took months to build a frame, drivetrain, motor control electronics and
electronics enclosure for the big robot. If it proves easy to hack the
motor control of this toy and all electronics can just be stuffed inside
it, then there's easily an order of magnitude improvement in development
time. This isn't quite true - cost has been shifted from hardware to
software. I've been working on EmbedCV for several months and it is still
far from working on a robot. If this works, it may be a better time/money
tradeoff for many people who wish to build robots - COTS vehicle platforms
with 32 bit embedded computers and more advanced signal processing for
sensing the environment.
My theory is that PWM speed control added to the rear drive is enough that
bang-bang steering is ok. I think that driving in smooth curves is
somewhat difficult. Most robots drive in straight lines. They only turn
when pointed in the wrong direction. That's how I'm viewing this robot.
When turning, it can just slow down so the vision and control system can
keep up with the angular rate of turn. Then once pointed in the right
direction, it can increase speed.
Here's a better photograph of the electronics board inside the toy.
http://golem5.org/embedcv/images/img3868.jpg
If anyone has some experience regarding hacking this kind of thing, I
would appreciate your advice. I plan on using the DIO lines (appropriately
level shifted and buffered) from the ARM9 SBC to tap into the existing RC
circuits and control the car. I'd like to leave the radio receiver
electronics in place too. Right now, I am thinking absolutely minimal
modification.
Some things I recognize. Those three big diodes must be for motor flyback
voltage. There's a coil and IC for the radio. Does anyone know what that
company insignia is? Where can I find a datasheet? There are a whole bunch
of bipolar transistors for motor control. I didn't expect this many. I'll
reverse-engineer and diagram the circuit soon.
Chris
_______________________________________________
DPRGlist mailing list
DPRGlist at dprg.org
http://list.dprg.org/mailman/listinfo/dprglist
More information about the DPRG mailing list
|