Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

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

Компиляция | Программирование ИС PIC | Использование DOS версии EPIC | Проверка PIC микроконтроллера | Новые возможности интегрированной среды обработки (IDE) | Первая программа на PICBASIC PRO | CodeDesigner и программатор EPIC | Выключатели низкого уровня | Выключатели высокого уровня | Считывание данных компаратора |


Читайте также:
  1. CodeDesigner и программатор EPIC
  2. III. УЧЕБНАЯ ПРОГРАММА
  3. IV. РАБОЧАЯ УЧЕБНАЯ ПРОГРАММА
  4. SPA программа Lebel
  5. XI. ПРОГРАММА СОРЕВНОВАНИЙ
  6. АНИМАЦИОННАЯ ПРОГРАММА
  7. АЭРОБНАЯ ГИМНАСТИКА ФИЖ - ПРОГРАММА ДЛЯ МИРОВЫХ СОРЕВНОВАНИЙ 2013 – 2016

Демонстрационная программа будет качать вал сервомотора из левого положения в правое и обратно аналогично качанию параболической антенны радара. Схема устройства приведена на рис. 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 ‘Нет


Дата добавления: 2015-08-17; просмотров: 70 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Считывание данных резистивных датчиков| Нечеткая логика

mybiblioteka.su - 2015-2024 год. (0.006 сек.)