Плавное движение сервы

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Re: Плавное движение сервы

Сообщение =DeaD= » 21 сен 2009, 16:55

space писал(а):Что то я тебя не совсем понял :unknown:

Ну на серву МК передает информацию раз в 20мс. Поэтому то что ты меняешь ему, что передавать на серву каждые 12мс - выглядит странно. Представь, что ты капитан корабля и твои команды машинное отделение выполняет раз в 15 минут, а между выполнением только в домино играет, да записывает последнюю команду, которую ты им отдал, чтобы при очередном подходе её выполнить - какой смысл каждые 5 минут ему отдавать новые команды? :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Плавное движение сервы

Сообщение space » 21 сен 2009, 17:08

Ни какого. Вообщем тебе эта задержка не нравится. Но если её убрать совсем, то такого плавного движения уже не будет. будет быстрое вращение. Да и так же в хелпе написано.
Код: Выделить всё
$regfile = "2313def.dat"                                    ' specify the used micro

$crystal = 4000000                                          ' used crystal frequency

$baud = 19200                                               ' use baud rate

$hwstack = 32                                               ' default use 32 for the hardware stack

$swstack = 10                                               ' default use 10 for the SW stack

$framesize = 40                                             ' default use 40 for the frame space



'Servo's need a pulse in order to operate

'with the config statement CONFIG SERVOS we can specify how many servo's we

'will use and which port pins are used

'A maximum of 14 servos might be used

'The SERVO statements use one byte for an interrupt counter and the TIMER0

'This means that you can not use TIMER0 anymore

'The reload value specifies the interval of the timer in uS

'Config Servos = 2 , Servo1 = Portb.0 , Servo2 = Portb.1 , Reload = 10



Config Servos = 1 , Servo1 = Portb.0 , Reload = 10

'as an option you can use TIMER1

'Config Servos = 2 , Servo1 = Portb.0 , Servo2 = Portb.1 , Reload = 10 , Timer = Timer1



'we use 2 servos with 10 uS resolution(steps)



'we must configure the port pins used to act as output

Config Portb = Output



'finally we must turn on the global interrupt

Enable Interrupts



'the servo() array is created automatic. You can used it to set the

'time the servo must be on

Servo(1) = 10                                               '10 times 10 = 100 uS on

'Servo(2) = 20                                               '20 times 10 = 200 uS on

Do

Loop



Dim I As Byte

Do

For I = 0 To 100

  Servo(1) = I

  Waitms 1000

Next



For I = 100 To 0 Step -1

'  Servo(1) = I

  Waitms 1000

Next

Loop

End
Аватара пользователя
space
 
Сообщения: 565
Зарегистрирован: 17 июн 2007, 23:44
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич

Re: Плавное движение сервы

Сообщение =DeaD= » 21 сен 2009, 17:12

Мне не нравится, что эта задержка меньше 20мс :)

Хотя оно конечно почти пофиг :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Плавное движение сервы

Сообщение space » 21 сен 2009, 17:18

Вот так и надо было сказать, а то блин шарады какие то прям, команда, капитан хе.... :wink:
Так работает и не дёргается :)
Аватара пользователя
space
 
Сообщения: 565
Зарегистрирован: 17 июн 2007, 23:44
Откуда: Тула
прог. языки: Bascom AVR Basic, CodeVisionAVR
ФИО: Замотаев Кирилл Игоревич

Re: Плавное движение сервы

Сообщение Ворон » 23 сен 2009, 19:07

на видео точно нет каково нибудь редуктора до камеры?)он плавность бы дал существенную..
Ворон
 
Сообщения: 1054
Зарегистрирован: 24 ноя 2008, 19:43
Откуда: Казань

Пред.

Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12