Программа качания сервомотора

Программа качания сервомотора

Демонстрационная программа будет качать вал сервомотора из левого положения в правое и обратно аналогично качанию параболической антенны радара. Схема устройства приведена на рис. 6.26.

Рис. 6.26. Схема включения сервомотора

Ниже приведена программа для компилятора PICBASIC:

‘Программа качания сервомотора

‘Компилятор PICBASIC

‘Программа осуществляет качание из левого положения в правое и обратно

b0 = 100 ‘Инициализация левого положения

sweep: ‘Процедура прямого прохода

pulsout 0,b0 ‘Посылка импульса в сервомотор

pause 18 ‘Ожидание 18 мс (от 50 до 60 Гц)

b0 = b0 + 1 ‘Увеличение длины импульса

if b0 > 200 then sweepback ‘Конец прямого хода?

goto sweep ‘Нет, продолжение прямого прохода

sweepback: ‘Процедура обратного прохода

b0 = b0 – 1 ‘Уменьшение длины импульса

pulsout 0,b0 ‘Посылка импульса в сервомотор

pause 18 ‘Ожидание 18 мс (от 50 до 60 Гц)

if b0 < 100 then sweep ‘Конец обратного хода?

goto sweepback ‘Нет

Программа для компилятора PICBASIC Pro:

‘Программа качания сервомотора

‘Компилятор PICBASIC Pro

‘Программа осуществляет качание из левого положения в правое и обратно

b0 var byte

b0 = 100 ‘Инициализация левого положения

sweep: ‘Процедура прямого прохода

pulsout portb.0,b0 ‘Посылка импульса в сервомотор

pause 18 ‘Ожидание 18 мс (от 50 до 60 Гц)

b0 = b0 + 1 ‘Увеличение длины импульса

if b0 > 200 then sweepback ‘Конец прямого хода?

goto sweep ‘Нет, продолжение прямого прохода

sweepback: ‘Процедура обратного прохода

b0 = b0 – 1 ‘Уменьшение длины импульса

pulsout portb.0,b0 ‘Посылка импульса в сервомотор

pause 18 ‘Ожидание 18 мс (от 50 до 60 Гц)

if b0 < 100 then sweep ‘Конец обратного хода?

goto sweepback ‘Нет

Данный текст является ознакомительным фрагментом.