Форум ModelldepO  

Вернуться   Форум ModelldepO > Моделизм > Электрика и DCC > Arduino
Ответ
 
Опции темы Опции просмотра
Старый 08.02.2018, 19:15   #1
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию управление сервами через PCA9685

Кто-нибудь сталкивался с управлением сервами через PCA9685 ( подключается к дуне по i2c ,увеличивает кол-во серв до 16 ).

Библиотеки из примеров ( http://www.naylampmechatronics.com/b...s-PCA9685.html ) загрузились и работают, но опыты по добавлению их к готовому скетчу управления стрелками тумблером/кнопкой не увенчались успехом
Alexandro вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 08.02.2018, 19:59   #2
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
Кто-нибудь сталкивался с управлением сервами через PCA9685
В чём у вас проблема? Выложите свой скетч.
Данную тему активно обсуждали в 2016 году.
Alexmit вне форума  
Вверх
Старый 08.02.2018, 20:22   #3
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

скетч для стрелки в приложении,пытался заменить в нем исполнительные моменты на команды из примера по PC9685 - ничего неполучилось
Вложения:
Тип файла: zip qvan-s_point.zip (1.2 Кб, 118 просмотров)
Alexandro вне форума  
Вверх
Старый 08.02.2018, 20:46   #4
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
пытался заменить в нем исполнительные моменты на команды из примера по PC9685
Ничего не заметил. Или вы не тот архив отправили.

Сделал из того, что прислали.
qvan-s_point-2.zip
Alexmit вне форума  
Вверх
2 пользователя(ей) сказали cпасибо:
Старый 08.02.2018, 22:27   #5
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

Спс! Подскажите,пож. как теперь углы необходимые задать? Как я понял они в servomin/servomax заложены в виде длительности импульсов ?
Alexandro вне форума  
Вверх
Старый 08.02.2018, 22:48   #6
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
как теперь углы необходимые задать? Как я понял они в servomin/servomax заложены в виде длительности импульсов ?
Ставите свои значения. Только не выходите за пределы заданные в скетче.
Пересчитывать через формулы смысла нет, всё равно для каждой сервы значения будут свои.
Если только в целях безопасности.
Arduino код:
// moves a servo transforming the angle 0-127 to pulses value range needed by the library
void positionServo(int pServoNumint pPosition)
{
  
int val=0;
  
val=map(pPosition,1127SERVOMINSERVOMAX);
  
servo.setPWM(pServoNum0val);

Вместо servomin/servomax сделайте по две переменных для каждой сервы или массивы.
Alexmit вне форума  
Вверх
Старый 10.02.2018, 13:04   #7
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

этот код на каждую серву надо добавить?

скетч работает странно - в зависимости от состояния на управляющем входе ( тумблера ) серва меняет направление движение, при этом постоянно медленно вращается,когда доходит до крайнего положения - резко возвращается в обратное крайнее и начинает движение снова.
Alexandro вне форума  
Вверх
Старый 11.02.2018, 05:23   #8
BR95009
Brocken-Meister
 
Аватар для BR95009
 
Регистрация: 27.04.2012
Адрес: !Msk
Сообщений: 8,603
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 110 раз(а) в 87 сообщениях
Сказал(а) спасибо: 7,012
Поблагодарили 9,313 раз(а) в 3,305 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: репутация неоспорима (9354)
По умолчанию

Alexmit,

Леш, а ты такой штукой пользовался? Работает?
__________________
H0 - DR/DB, Ep.III, G и H0m - HSB, Н0е - DR/ÖBB/Zillertalbahn Ep.V-VI. И эночка.
Московский Модуль H0-присоединяйтесь!
BR95009 вне форума  
Вверх
Старый 11.02.2018, 09:17   #9
мистер И.К.С.
Ĩ.Ĉ.Š.ҧрѻҫҭҩ мӥҫҭҿӄѣӤ.Ҟ.Ҫ
 
Аватар для мистер И.К.С.
 
Регистрация: 10.07.2006
Адрес: 13 верста У.Г.Ж.Д. HOe.N.Z? . . G.Oe.HO!
Сообщений: 2,408
Сказал(а) 'не согласен(а)'!: 466
Сказали 'не согласен'! 135 раз(а) в 123 сообщениях
Сказал(а) спасибо: 3,317
Поблагодарили 7,245 раз(а) в 2,851 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: репутация неоспорима (7874)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
Кто-нибудь сталкивался с управлением сервами через PCA9685
на соседнем форуме полностью рабочий вариант http://scaletrainsclub.com/board/vie...p?f=30&t=14196

Цитата:
Сообщение от Andreevich post_id=200334 time=1517898858 user_id=5381
Цитата:
Сообщение от kuli post_id=200309 time=1517851878 user_id=4209
Что в ардуину заливать???
Заливать вот этот работающий файл
I2C_pwmtest_with_MCP23016_work_NO_int_ver.3__31.12 .2017.ino
(5.08 КБ) 11 скачиваний

Последний раз редактировалось мистер И.К.С.; 11.02.2018 в 16:40.
мистер И.К.С. вне форума  
Вверх
2 пользователя(ей) сказали cпасибо:
Старый 11.02.2018, 13:19   #10
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

Цитата:
Сообщение от мистер И.К.С. Посмотреть сообщение
на соседнем форуме полностью рабочий вариант http://scaletrainsclub.com/board/vie...p?f=30&t=14196
спс,файл нашелся,будем посмотреть что и как.)
правда,опять - вопрос - там про расширитель i/o ,про PC8596 просто упоминается,где что в скетче без пол-литры без всей авторской схемы не разобраться.

Последний раз редактировалось Alexandro; 11.02.2018 в 17:27.
Alexandro вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 12.02.2018, 08:12   #11
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
этот код на каждую серву надо добавить?
Это зависит от того как скетч напишите.
Цитата:
Сообщение от Alexandro Посмотреть сообщение
скетч работает странно
Поправьте вот этот кусок.
Arduino код:
   if(servo_flag1)// если сработал флаг переключения 
   

         
servo_flag1 0;
         
switchSend(addressservo_direction1); //функция перевода стрелки
    



---------- Сообщение добавлено в 08:06 ---------- Предыдущие сообщение было в 08:00 ----------

Цитата:
Сообщение от BR95009 Посмотреть сообщение
Леш, а ты такой штукой пользовался? Работает?
Работает. И очень хорошо. Просто в H0 надо немного "жабу" придушить, потому как реально будет использоваться меньше половины каналов.
На крайний случай можно оставшиеся каналы использовать под "вкл-выкл". #40


---------- Сообщение добавлено в 08:08 ---------- Предыдущие сообщение было в 08:06 ----------

Цитата:
Сообщение от мистер И.К.С. Посмотреть сообщение
на соседнем форуме полностью рабочий вариант
Который желательно переписать.

---------- Сообщение добавлено в 08:12 ---------- Предыдущие сообщение было в 08:08 ----------

Цитата:
Сообщение от Alexandro Посмотреть сообщение
про PC8596 просто упоминается,где что в скетче
Правильно, в конце скетча, две команды на исполнение, причём без плавного перевода.

Последний раз редактировалось Alexmit; 12.02.2018 в 17:55.
Alexmit вне форума  
Вверх
Старый 12.02.2018, 12:39   #12
BR95009
Brocken-Meister
 
Аватар для BR95009
 
Регистрация: 27.04.2012
Адрес: !Msk
Сообщений: 8,603
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 110 раз(а) в 87 сообщениях
Сказал(а) спасибо: 7,012
Поблагодарили 9,313 раз(а) в 3,305 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: репутация неоспорима (9354)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
Просто в H0 надо немного "жабу" придушить, потому как реально будет использоваться меньше половины каналов.
Всмысле, жабу? Почему половина?
__________________
H0 - DR/DB, Ep.III, G и H0m - HSB, Н0е - DR/ÖBB/Zillertalbahn Ep.V-VI. И эночка.
Московский Модуль H0-присоединяйтесь!
BR95009 вне форума  
Вверх
Старый 12.02.2018, 15:38   #13
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Цитата:
Сообщение от BR95009 Посмотреть сообщение
Всмысле, жабу? Почему половина?
У микросхемы 16 каналов. Сколько у тебя планируется стрелок в радиусе примерно 50 см?
Alexmit вне форума  
Вверх
Старый 12.02.2018, 19:53   #14
BR95009
Brocken-Meister
 
Аватар для BR95009
 
Регистрация: 27.04.2012
Адрес: !Msk
Сообщений: 8,603
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 110 раз(а) в 87 сообщениях
Сказал(а) спасибо: 7,012
Поблагодарили 9,313 раз(а) в 3,305 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: репутация неоспорима (9354)
По умолчанию

Ну где то так и планируется. В этом диапазоне.
__________________
H0 - DR/DB, Ep.III, G и H0m - HSB, Н0е - DR/ÖBB/Zillertalbahn Ep.V-VI. И эночка.
Московский Модуль H0-присоединяйтесь!
BR95009 вне форума  
Вверх
Старый 13.02.2018, 17:34   #15
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
Поправьте вот этот кусок.
исправил - не работает.( жизнь начинается если byte address = 1 заменить на номер сервы ( серва начинает медленное движение в одну сторону,потом резко переходит в др крайнее состояние и все сначала.
Вложения:
Тип файла: zip pwm_servo_knob.zip (1.4 Кб, 88 просмотров)
Alexandro вне форума  
Вверх
Старый 13.02.2018, 18:00   #16
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Присланный файл прекрасно работает.
Какой канал пропишите в переменную byte address = 1; // номер канала на котором висит серва
тот и будет работать.
А строчку uint8_t servonum = 12; можно стереть.
И читайте коментарии в скетче, скетч написан для тумблера, а не для кнопки.
uint8_t switch_pin = 2;// пин для вашего тумблера
И естественно задержку delay(30); надо сделать поменьше. Поставьте 5.
Alexmit вне форума  
Вверх
2 пользователя(ей) сказали cпасибо:
Старый 13.02.2018, 18:33   #17
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

заработало,оказалась причина в delay )
неподскажете, как теперь эту историю с углом внедрить?
Код:
void positionServo(int pServoNum, int pPosition) 
{ 
  int val=0; 
  val=map(pPosition,1, 127, SERVOMIN, SERVOMAX); 
  servo.setPWM(pServoNum, 0, val); 
}
или не париться и сервотестером вычислить значения PWM для разных углов ?
Alexandro вне форума  
Вверх
Старый 13.02.2018, 18:54   #18
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

И ещё поменяйте
bool servo_flag1 = 0;// флаг работы и bool last_pin_state = 1; //прошлое состояние пина
Что-бы в начале работы не двигалось.
И поймите, это только пример.

Цитата:
Сообщение от Alexandro Посмотреть сообщение
неподскажете, как теперь эту историю с углом внедрить?
В вашем случае смысла нет. Или вы будете часто значения менять?
Цитата:
Сообщение от Alexandro Посмотреть сообщение
или не париться и сервотестером вычислить значения PWM для разных углов ?
Делается тестовый скетч и в нём подбираете значения. Далее вписываете в основной.
Alexmit вне форума  
Вверх
2 пользователя(ей) сказали cпасибо:
Старый 13.02.2018, 19:00   #19
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
В вашем случае смысла нет. Или вы будете часто значения менять?
у меня уже сервы на макет установлены и записаны их положения рабочие в углах,что бы не сломать ничего - хотелось дополнить скетч сервотестера значением pwm
Alexandro вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 13.02.2018, 19:28   #20
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
у меня уже сервы на макет установлены и записаны их положения рабочие в углах,что бы не сломать ничего - хотелось дополнить скетч сервотестера значением pwm
Вот в этой библиотеке https://github.com/NachtRaveVL/PCA9685-Arduino
Есть заготовочка Servo Evaluator Example, похоже это то, что вам нужно.
Но разбирайтесь с ней и с библиотекой сами.

Да и в первом сообщении по ссылке есть пример пересчёта.
Только там всё равно надо начальные значения для каждой сервы устанавливать.
Alexmit вне форума  
Вверх
Пользователь сказал cпасибо:
Старый 13.02.2018, 19:47   #21
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
Только там всё равно надо начальные значения для каждой сервы устанавливать.
мне для этого их вычислить надо в pwm )
еще вопрос - пару и больше ардуин я могу по i2c подключить к PC8596?
планировал сигналы и стрелки отдельными платами обрабатывать,хотя если входов хватит...
Alexandro вне форума  
Вверх
Старый 13.02.2018, 20:01   #22
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
мне для этого их вычислить надо в pwm
Только не в pwm, а в значениях для микросхемы.
(грубо говоря те же SERVOMIN и SERVOMAX)
Так и какой смысл их каждый раз в скетче пересчитывать?
Цитата:
Сообщение от Alexandro Посмотреть сообщение
еще вопрос - пару и больше ардуин я могу по i2c подключить к PC8596?
планировал сигналы и стрелки отдельными платами обрабатывать,хотя если входов хватит...
Нет. Наоборот к одной ардуине можно подключить несколько PCA9685. (до 62)
А для светофоров надо делать на отдельной PCA9685, т.к. там используется другое значение частоты внутреннего генератора.
А если не хватает входов то используйте "расширители" как предложено в 9 сообщении.
Только лучше брать MCP23017.
Alexmit вне форума  
Вверх
Старый 13.02.2018, 20:11   #23
Alexandro
Заглянувший
 
Аватар для Alexandro
 
Регистрация: 07.09.2015
Адрес: SPb
Сообщений: 76
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 8
Поблагодарили 6 раз(а) в 6 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: пока неопределено (6)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
Так и какой смысл их каждый раз в скетче пересчитывать?
я это в скетч сервотестера хотел вставить ), что бы в стрелочный скетч сразу готовые значения вставить.
( в процессе настройки уже были неприятные моменты когда не тот угол на серву задал и привод семафора вырвался )
Цитата:
Сообщение от Alexmit Посмотреть сообщение
А для светофоров PCA9685 надо делать отдельно там используется другое значение частоты внутреннего генератора.
у меня механические сигналы,на сервах ( в паре правда 2х-цветные светодиоды вместо ламп стоят...)
если с сигналами не объединить - стоит ли на 7 стрелок РС8596 использовать...
Цитата:
Сообщение от Alexmit Посмотреть сообщение
А если не хватает входов то используйте "расширители" как предложено в 9 сообщении.
а если на регистрах сделать?
Alexandro вне форума  
Вверх
Старый 13.02.2018, 20:26   #24
shalex
Местный
 
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,853
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,634
Поблагодарили 3,271 раз(а) в 1,169 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (3282)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
мне для этого их вычислить надо в pwm
Возможно забыли перевести углы по пропорции

#define SERVOMIN 150 // this is the 'minimum' pulse length count (out of 4096)
#define SERVOMAX 550 // this is the 'maximum' pulse length count (out of 4096)

угол 0 град должен выдавать 150, а угол 180 град = 550


Потом полученные значения подставить вместо старых SERVOMIN и SERVOMAX.
shalex вне форума  
Вверх
Старый 13.02.2018, 20:33   #25
Alexmit
Местный
 
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,827
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 971
Поблагодарили 2,639 раз(а) в 1,561 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
1 Всего
Репутация: репутация неоспорима (2665)
По умолчанию

Цитата:
Сообщение от Alexandro Посмотреть сообщение
а если на регистрах сделать?
Если надо не больше 16 дополнительных входов, то можно без проблем.
Цитата:
Сообщение от Alexandro Посмотреть сообщение
если с сигналами не объединить - стоит ли на 7 стрелок РС8596 использовать...
Да. Это если меньше 5, то смысла нет.
А светодиоды подключить можно, только тогда для них нельзя будет использовать плавное гашение. (В 11 сообщении.)
Цитата:
Сообщение от Alexandro Посмотреть сообщение
я это в скетч сервотестера хотел вставить ), что бы в стрелочный скетч сразу готовые значения вставить.
Тогда смотрите Servo Evaluator Example по ссылке в 20 сообщении.

---------- Сообщение добавлено в 20:33 ---------- Предыдущие сообщение было в 20:29 ----------

Цитата:
Сообщение от shalex Посмотреть сообщение
угол 0 град должен выдавать 150, а угол 180 град = 550
Проблема в том, что для каждой сервомашинки эти значения свои.
(чуть-чуть, но отличаются, мне одинаковые не попадались)
Alexmit вне форума  
Вверх
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Управление сервами от кнопок (для аналогового макета) BNSF9399 Arduino 97 25.03.2018 23:59
мостик через болотце Igor Poezdov Элементы макетов 29 28.12.2017 18:24
Управление через USB-COM порт YMOR2012 Электрика и DCC 12 05.09.2015 18:07
Программирование через мультимаус Johnny Электрика и DCC 4 24.07.2015 23:45
ЖД мост,через реку Огре. Латвия. Doctor_MB ЖД техника 6 09.06.2013 18:57


Текущее время: 07:55. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
Copyright © ModelldepO.ru 2006 -