суббота, 12 марта 2011 г.

Двигаем серву!

Итак, коту не особо удалось в сети найти информацию что такое серва и с чем ею питаться, посему пришлось самому находить общий язык. Управлять схемой ббудет полугорелый PIC1684A в замен покойного PIC16F877A:

 

IMG_0006

 

Как удалось узнать у авиамоделистов, аналоговая серва управляется длительностью ступеньки. Со слов удалось выяснить что у нормальных серв в принципе есть документация, но не тратить же 500р на то что может умереть за вечер?) Итак, виновник торжества, безымянная микросерва:

 

IMG_0007

 

Среднестатистическая серва встает в среднее положение благодоря ступеньке в 1000 микросекунд. Перерыв между импульсами примерно 20-30 миллисекунд

 

Безымянный

 

делать перерыв больше – вполне таки не возбраняется, только скорость реакции сервы на восстановление угла будет дольше. Делать меньше – при отсутствии документации аккуратно, чтоб серва не свернула себе шестеренки, но найти ее тех минимум (при отсутствии документации) очень даже полезно.

 

Подключение. Аналоговая микросерва имеет на своем борту 3 провода. Что каждый из них значит - расшифровали коту те же самые авиамоделисты. Средний провод, как правило красный, это питание (в зависимости от типа сервы свое питание, но стандартные двигатели кушают в диапазоне 3.5-6V ). Далее. Черный, или как в случае кота, коричневый (просто краски не хватило видимо XD) это земля. И оставшийся шнур как можете догадаться, предназначен для управляющего сигнала-ступеньки.

 

IMG_0011

 

 

дело за малым, написать программу. Может в скором времени хвостатый и освоит пикоасемблер, но пока что это микроси:

 

int i;
void main()
{
TRISA.B1=0;

while(1)
{
  i=0;
  while(i<100)
  {
   PORTA.B1=1;
   Delay_us(500);
   PORTA.B1=0;
   Delay_ms(25);
   i++;
  }
  i=0;
  while(i<100)
  {
   PORTA.B1=1;
   Delay_us(2100);
   PORTA.B1=0;
   Delay_ms(25);
   i++;
  }

}
}

 

Вот и все, смотрим на результат:

 

 

 

П.С. автор симпы, отзовись!)

П.П.С. велком новомой пч, Lguniska. Рад знакомству!

 

 

Комментариев нет: