# Choosing the right motor to control mirrors

I am developing a computer vision project which involves developing a system using mirrors for pan and tilt movement of the camera field of view. Mirrors are independent of each other regarding movement. I am confused on which kind of motor should be best suited for rotating the mirrors.

I have already tried stepper motor and digital servo motor for this application with not so good results. With servos control and speed are easy but update frequency is not so good (50 Hz). I am using Pololu Maestro controller to control servos. Since this is comparable to time between two frame capture, motors do start-stop sort of motion which kills smoothness. With stepper motors, control is difficult as compared servos. With no obvious reason to me, when I send commands to stepper motors, it gives very bumpy motion.

I am looking for motors which can be updated almost every 10ms with a resolution of around 0.1 degrees. I also want to control parameters of rotation like speed and angular acceleration.

• Typically questions asking recommendations of solutions without a decent effort in research are off topic. The motors on the video are BLDC motors. There are ready made drivers available. Another option are stepper motors (and geared down stepper motors). What kind of speed, weight, resolution and accuracy do you need? Sep 28, 2016 at 5:20
• @WesleyLee I tried stepper motors for this but they don't go well , there were jitters involved while tracking.Yes BLDC is the one which i am looking for.I need fast speed with high resolution and reasonable accuracy. Sep 28, 2016 at 5:25
• You should add why stepper motors aren't a decent solution to your question so people can understand the problems you are facing. Also, "fast" "high" and "reasonable" do not help people understand your requirements. I'm sorry for being pedantic about this but I'm trying to help you format your question. Sep 28, 2016 at 5:27
• I mean, just taking a TOTAL WING AT IT, but this seems suitable: amazon.co.uk/DYS-Brushless-Motor-BGM8108-100T-Gimbal/dp/… Sep 28, 2016 at 5:29
• Steppers will do what you want if you drive them right. As you say they don't work for you, I guess you're driving them wrong! Sep 28, 2016 at 6:36

You are comparing potatoes and apples. The limits of stepper motors are known, while you are comparing servo motors, which indeed are RC servos, not the PMSM or BLD servos. In the link you can see BLDC motors. Now it is up to you to choose a BLDC or PMSM motor and driver. The you' ll need a master controller, which will send position setpoint with known speed, acceleration - aka trajectory generator. Each driver has to correct the actual position vs. setpoint position with the use of cascaded control loops - position, velocity, current loops.

This cascaded controll loop has also feedforward paths, like setpoint velocity from trajectory planer is fed forward to the velocity loop, regardeless what is the position error. In the same manner you have a torque/current feedforward path, derived from velocity setpoint. The required feedforward torque is: $T= J\cdot\alpha$, where $J$ is the moment of inertia of the system: motor's rotor inertia + transformed inertia of the load. $\alpha$ is the angular acceleration $\alpha=\dfrac{d\Omega}{dt}$, where $\Omega$ is the velocity setpoint. A high end servo is updating the current controller at aprox. 50 micro seconds, the velocity controller at 100 micro seconds, and the position controller at 500 micro seconds or more, it depends on the trajectroy planner.

I don't know what size mirrors you need, but a "Galvanometer scanner" might fit the bill. They are typically used to steer laser beams in marking machines and laser show applications, and Cambridge Technologies is the company name to conjure with.

Basically they are moving magnet galvanometers with a servo loop closed by magnetic, capacitive or optical feedback, small angle response is to a few KHz depending on how much moment of inertia you hang on the things.