|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||
|
|||
|
Re: Advanced Vision Concept [help!]
It is far from impossible. It is very possible. In fact, it sometimes is used as the "hello world" for computer vision, along with color detection.
|
|
#2
|
||||
|
||||
|
Re: Advanced Vision Concept [help!]
if you can find a highly curved mirror, you wouldn't need any motor at all. We have talked hypothetically, but never actually enacted, this idea.
Point the camera straight up to the ceiling, but have a convex mirror pointed down at it that lets it see a distorted image, but an image all the way around. If you use some clever algorithms, you can correct for the mirror's distortion and produce a 360-degree image to feed into your stock color/shape recognition software. |
|
#3
|
|||
|
|||
|
Re: Advanced Vision Concept [help!]
Quote:
What an issue would be, is if my robot had to lose it's y-axis offset (say it went over the bump or climbed the ramp) then the image would be lost, and programming this would take more intelligence than I have to spare. Could there be an easy(er) concept? @davidthefat: What I am going for is basically like an automated tank turret system that stays locked onto the goal while I go around and feed balls into it to shoot. I've already programmed for the distance to shoot, and the turret is designed, but the problem is automated aiming. This is far from "hello-world" for a high school programmer ![]() Last edited by Jester : 09-01-2012 at 21:49. |
|
#4
|
|||
|
|||
|
Re: Advanced Vision Concept [help!]
There is an example in Program Files/National Instruments/LabVIEW 2011/Examples/FRC/Vision called Servo Camera Example. It detected the pink and green fabric and aimed the servo at it. It is a bit difficult to setup, runs on the cRIO, but includes most of the code you are looking for provided you are only aiming the camera and hobby servos will work. If you are rotating a heavier mass, you will need a motor with more torque and you'll need an encoder or other sensor that gives feedback.
Greg McKaskle |
|
#5
|
||||
|
||||
|
Re: Advanced Vision Concept [help!]
the problem with servos is that they are not continuous. I would opt for a servo to control the up/down motion and a regular "servo-ed" motor to control the side-to-side. This would let you turn all the way around (although your cable would wrap up).
Basically, to keep the camera set, you just need to find the target and find out how far away it is from the center of your field of view. Continually send instructions to the motor to move it to the middle. The difficulty is actually mechanically attaching the camera. Without a fancy rotary brush thing, you would have issues with the camera cable being tangled up. If you measured the "actual" rotation of the robot with a gyro, you might be able to get away with a normal servo: have a variable called "offset_angle" or something. you will also (because you plan to use a servo) know the angle between the front of the robot and the camera. when the camera sees the target, you can use some trig to determine the angle between the line of sight of the camera and the direction to the goal. subtract all of these angles to determine how far the robot is from the target (as an angle, ie. "if you turn 15 degrees to the right, you will be facing the target") You can turn in place and keep track of this angle using the gyro, even if you do not see the goal markings. With this setup, to keep the camera on-track without a continuous motor, point the servo to the "angle between the robot and the goal" Then it will point the camera towards the goal and if you turn around backwards where the servo cannot go, the camera will pan all the way around, turning away from the goal for a minute, and pick it up on the other side. Did I ramble too much there? |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|