Вот сделал такую программку пробную для манипулятора. Управляться будет через джойстик А0-А2 (потом ещё один добавлю). Всё работает, но если джойстик не двигать то серваки подергиваются. Почему так? Откуда туда сигнал поступает? Так же джойстик очень чувствительный. Что с этим можно сделать. Его чуть коснешься он уже поварачивает на несколько градусов сервак. Вот программа: PrimaryI2C.setup({sda: SDA, scl: SCL, bitrate: 400000}); var Servo = require('@amperka/multiservo').connect(PrimaryI2C); var s0 = Servo.connect(0, {valueMin:0, valueMax:1}); var s1 = Servo.connect(1, {valueMin:0, valueMax:1}); var s2 = Servo.connect(2, {valueMin:0, valueMax:1}); setInterval(function() { s0.write(analogRead(A0,10,{soft:true})); s1.write(analogRead(A1,10,{soft:true})); s2.write(digitalRead(A2,10,{soft:true})); }, 100);
Значение, которое читаете с аналогового входа. Смотря какая вам точность достаточная. Я бы взял 17, например. И питание проверить не забудьте, кстати.