8.2 Задание на проектирование.
Создать программу для автоматизации окрасочной камеры, описанной в лабораторной работе 2, выполняющую следующую работу:
- при подаче питания включить световую сигнализацию на пульт оператора L2 и звуковую предупреждающую сигнализациюS1 на 2 секунды;
- включить двигатель краскораспылителя D1 на 3 секунды, а также двигатель вентилятораD2 и лампочкуL1;
- выключить краскораспылитель D1, вентиляторD2 и лампочкаL1 должны работать еще 2 секунды;
- выключить D2 иL1 на 1 секунду для замены заготовки в камере;
- повторить процесс окрашивания новой заготовки, начиная с включения предупреждающей звуковой сигнализации S1.
Временная диаграмма работы камеры показана на рисунке 8.2.
Рисунок 8.2 – Временная диаграмма работы окрасочной камеры
Программа 8.1.
include<p16F877.inc>
Sch_in EQU H'22'; счетчик внутреннего цикла задержки.
Sch_out EQU H'24' ; счетчик внешнего цикла задержки.
Sch3 EQU H'23' ; счетчик третьего цикла задержки.
; Инструкции настройки МК опущены.
; Рабочая часть программы
MOVLW B'10000000'
MOVWF PORTC; включаем сигнализацию L2 на пульт оператора.
Sled_det BSF PORTC, 0; включаем звуковую сигнализацию S1.
MOVLW d’40’; аргумент W задает время таймера. При отладке d’2’.
CALL Timer
MOVLW B'10001110'
MOVWF PORTC; выключаем S1, включаем D1, D2 и L1.
MOVLW d’60’; задаем время окраски.
CALL Timer
BCF PORTC, 2; выключаем D1, продолжают работать D2, L1 и L2.
MOVLW d’40’; задаем время работы D2 и L1.
CALL Timer
MOVLW B'10000000'
MOVWF PORTC; окраска закончена, но сигнализация L2 работает.
MOVLW d’20’; задаем время для замены заготовки.
CALL Timer
GOTO Sled_det; на метку Sled_det для повторения окраски.
GOTO $; разделитель основной программы и подпрограмм.
Timer; подпрограмма Timer. Применено два вложенных цикла.
MOVWF Sch3; значение W является аргументом для таймера.
M3 MOVLW D'150'
MOVWF Sch_out; устанавливаем значение внешнего счетчика.
M_out; метка внешнего счетчика.
MOVLW D’255';
MOVWF Sch_in; устанавливаем значение внутреннего счетчика.
M_in; метка внутреннего счетчика.
DECF Sch_in, F; уменьшаем значение счетчика Sch_in на 1.
BTFSS STATUS, Z; если счетчик Sch_in обнулился, пропускаем GOTO.
GOTO M_in; срабатывает только при Z=0.
DECF Sch_out, F; уменьшаем значение счетчика Sch_out на 1.
BTFSS STATUS, Z; если счётчик обнулился, пропускаем GOTO.
GOTO M_out; инструкция срабатывает только при Z=0.
DECF Sch3, F; уменьшаем значение счетчика Sch3 на 1,
BTFSS STATUS, Z; если оно равно нулю (Z=1), пропускаем GOTO.
GOTO M3; срабатывает только при Z=0.
RETURN; конец подпрограммы Timer.
END; конец текста всей программы.
- Микропроцессорные системы в электроэнергетике
- Алматы 2013
- Введение
- 1 Системы счислений. Карта памяти микроконтроллера
- 1.1 Краткие теоретические сведения
- 1.2 Задания
- 1.3 Контрольные вопросы
- 2 Изучение среды mplab. Управление оборудованием
- 2.1 Краткие теоретические сведения и задания для внеаудиторной подготовки
- "Умк-mini"
- 2.2 Исходные данные
- 2.3 Выполнение проекта на умк-7
- 4.Выполним соответствующие настройки для запуска Вашего проекта:
- 6.Запуск проекта
- 2.4 Контрольные вопросы
- 3 Сложение, вычитание. Логика
- 3.1 Теоретические сведения
- 3.2 Исходные данные и выполнение программы
- 3.4 Контрольные вопросы
- 4 Операции преобразования информации
- 4.1 Теоретические сведения
- 4.2 Исходные данные и задание
- 4.3 Контрольные вопросы
- 5 Анализ информации посредством регистра состояния
- 5.1 Теоретические сведения
- 5.2 Исходные данные
- 5.3 Порядок выполнения работы
- 5.4 Контрольные вопросы
- 6 Маскирование
- 6.1 Краткие теоретические сведения
- 6.2 Исходные данные и задание
- 6.3 Контрольные вопросы
- 7 Суммирование массива информации
- 7.1 Теоретические сведения
- 7.2 Исходные данные
- 7.3 Выполнение задания
- 7.4 Контрольные вопросы
- 8 Автоматизация окрасочной камеры. Организация подпрограмм
- 8.1 Теоретические сведения
- 8.2 Задание на проектирование.
- 8.3 Выполнение задания
- 8.4 Контрольные вопросы
- 9 Программированиеклавиатуры
- 9.1 Теоретические сведения
- 9.2 Задание на проектирование
- Фрагмент 9.1. Программирование клавиатуры.
- 9.3 Задание на выполнение
- 9.4 Контрольные вопросы
- 10 Автоматизация упаковки
- 10.1 Задание на автоматизацию упаковочной машины
- 10.2 Исходные данные
- 10.3 Выполнение задания
- 10.4 Контрольные вопросы
- 11 Программирование обработки аварийной ситуации
- 11.1 Теоретические сведения
- 11.2 Задание на проектирование и выполнение программы
- 11.3 Контрольные вопросы
- 12 Программирование таймерных функций
- 12.1 Задание на проектирование
- 12.2 Выполнение работы
- 12.3 Контрольные вопросы
- Приложение а Системы счислений
- Приложение б Карта памяти мк pic16877
- Приложение в
- Регистр Status
- Приложение д Описание инструкций мк pic
- Приложение е Модуль таймера tmr1
- Список литературы
- Содержание
- 0 50013, Алматы, Байтурсынова, 126