I really like PF motors. They have plenty of power, they are easy to mount, and the hollow shaft makes customizing a project a breeze. Everything I build uses the NXT, so I needed a way to control the PF motors. Enter the HiTechnic IRLink. But the problem is there is no direct way to the position of the shaft, such as “turn the shaft 270 degrees.” Well, there are a couple of ways to get around that.
The first way is to add some gearing and include a clutch gear. Then design your project so that it will hit some stops. When the stops are hit, the clutch gear will give and your actuator will end in the desired position. Reversing the motor will run the actuator the other way until the other stop is hit. This is analogous to using a pneumatic cylinder. Stopping the cylinder midway through the stroke is a challenge, so we mostly use it in the extended and retracted position. As you build and test, measure the time it takes to complete the cycle from one end to the other and write that into your program and add some additional time, say about 0.25 or .50 seconds.
Here is a short video showing an example of how that might work.
The second way again uses the IRLink sensor, but adds an RCX and a rotation sensor or a couple of touch sensors. The touch sensors would be used in the same manner as above, but the touch sensors would be used as the stop.
The IRLink makes use of the RCX and the PF motors, so you can get motor control and feedback while using only one port of the NXT! Imagine, using a single program, you can have 3 servomotors, 8 PF motors, 3 9V motors, 3 sensors on the RCX and 3 sensors on the NXT. If that is not enough power for you…..