Охранная система с дистанционным управлением

Методика создания и листинг недорогой многофункциональной охранной системы, отвечающей современным требованиям безопасности. Общая характеристика и сравнение отечественных однокристальных микроконтроллеров и микроконтроллеров фирм Atmel и Microchip.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 28.09.2010
Размер файла 3,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

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

Схема построена на современной элементной базе. Ядром устройства является высокоскоростной микроконтроллер семейства PIC18F452.

В результате проектирования было разработано устройство со следующими технико-экономическими показателями:

Таблица 9.1 - охранная система с дистанционным управлением

- Габариты

120ммЧ70ммЧ35мм;

- Масса

250 гр.;

- Коммутируемая нагрузка

до 1 кВт;

- Рабочая температура

-40…+60°C;

- Потребляемый ток

304мА;

- Себестоимость прибора

(2088,3 руб./ед.)

- Цена блока

(2896,15 руб./ед.)

Данные показатели соответствуют техническому заданию на разработку устройства.

Список литературы

1. Однокристальные микроконтроллеры Microchip: PIC16F8X : Пер с англ. / Под ред. А. Н. Владимирова. -- Рига: ORMIX, 1996. -- 96 с.

2. Долгий А. В. Разработка и отладка устройств на микроконтроллерах. // Радио.-- 2001.-- №5.- №12; 2002.-- №1.

3. Кобахидзе Ш. Г. Микроконтроллеры для начинающих и не только. // Радио.-- 2000.-- №2.- №5.

4. Хоровиц П., Хилл У. Искусство схемотехники: Пер. с англ. -- Изд. шестое. М.: Мир, 2001. -- 704 с.

5. Сучков Д. И. Основы проектирования печатных плат в САПР P-CAD 4.5, P-CAD 8.5 - 8.7 и ACCEL EDA. -- М.: Горячая линия-Телеком, 2000.-- 620 с.

6. С. П. Павлов, Л. С. Виноградов, Н. Ф. Крылова и др.; Под ред. С. П. Павлова. - Охрана труда в радио- и электронной промышленности: Учебник для техникумов. -- 2-е изд., перераб. и доп. -- М.: Радио и связь, 1985. -- 200 с.

Приложение А

Листинг программы

TITLE "Turbo service system"

LIST P=18F452

#include <P18F452.INC>

__CONFIG_CONFIG1H, _OSCS_OFF_1H & _XT_OSC_1H

__CONFIG_CONFIG2L, _BOR_ON_2L & _BORV_27_2L & _PWRT_ON_2L

__CONFIG_CONFIG2H, _WDT_OFF_2H & _WDTPS_128_2H

__CONFIG_CONFIG3H, _CCP2MX_ON_3H

__CONFIG_CONFIG4L, _STVR_ON_4L & _LVP_OFF_4L & _DEBUG_OFF_4L

__CONFIG_CONFIG5L, _CP0_OFF_5L & _CP1_OFF_5L & _CP2_OFF_5L & _CP3_OFF_5L

__CONFIG_CONFIG5H, _CPB_OFF_5H & _CPD_OFF_5H

__CONFIG_CONFIG6L, _WRT0_OFF_6L & _WRT1_OFF_6L & _WRT2_OFF_6L & _WRT3_OFF_6L

__CONFIG_CONFIG6H, _WRTC_OFF_6H & _WRTB_OFF_6H & _WRTD_OFF_6H

__CONFIG_CONFIG7L, _EBTR0_OFF_7L & _EBTR1_OFF_7L & _EBTR2_OFF_7L & _EBTR3_OFF_7L

__CONFIG_CONFIG7H, _EBTRB_OFF_7H

ORG 0x00

BRA START

ORG 008

BRA INT

ORG 018

MOVWF W_TEMP2

MOVFF STATUS,STATUS_TEMP2

MOVFF BSR,BSR_TEMP2

BTFSC PIR1,1

BRA TM2_INT

BTFSC PIR1,TMR1IF

BRA TM1_INT

BTFSC INTCON3,0

BRA INT1_IN

BRA intr

TM2_INTBTFSS REM_FLAG,5;if ALARM not on

BRA TM2_end

BTFSC HL_STAT,5

BRA light

BSF PORTC,5

BRA TM2_end

LightMOVLW .25

MOVWF PULSE_DEL

BSF PORTC,5;ALARM PULSE on

pulsDECF PULSE_DEL

TSTFSZ PULSE_DEL

BRA puls

BCF PORTC,5;ALARM PULSE off

TM2_endBCF PIR1,1

BRA intr

INT1_INMOVFF ALARM_DEL,TMR2

BCF INTCON3,0

BRA intr

TM1_INTMOVLW .25

ADDWF ALARM_DEL

MOVLW .250

CPFSEQ ALARM_DEL

BRA rut

CLRF ALARM_DEL

rutDECF TIME_DEL

BTFSS EVENTS,5

BRA sens

DECFSZ UART_DEL

BRA $+4

BSF EVENTS,4;Set flag "CONNECT ERROR"

;Switch HL1..HL3-------------------------------

rtBTFSC HL_STAT,0;

BSF PORTC,0;Apply changes

BTFSC HL_STAT,1;on flag HL_STAT

BSF PORTC,1;

BTFSC HL_STAT,2;(active)

BSF PORTC,2;

BTFSS HL_STAT,0;

BCF PORTC,0;

BTFSS HL_STAT,1;(desactive)

BCF PORTC,1;

BTFSS HL_STAT,2;

BCF PORTC,2;

BCF PIR1,TMR1IF

intrMOVFF BSR_TEMP2,BSR

MOVF W_TEMP2,W

MOVFF STATUS_TEMP2,STATUS

RETFIE

;-------Coder for digits printing----------------------

CODERRLNCF WREG;WREG=WREG*2

ADDWF PCL,F;Step

RETLW 30;'0'

RETLW 31;'1'

RETLW 32;'2'

RETLW 33;'3'

RETLW 34;'4'

RETLW 35;'5'

RETLW 36;'6'

RETLW 37;'7'

RETLW 38;'8'

RETLW 39;'9'

;-------Interrupt subroutines-------------------------

INTMOVWF W_TEMP

MOVFF STATUS,STATUS_TEMP

MOVFF BSR,BSR_TEMP

MOVFF TMR0L,PERIOD;capture timer value

CLRF TMR0L

;-------

anothBTFSC FLAG,2;If parity bit will be received...

BRA PARITY;

BTFSC FLAG,1;If start bit was received...

BRA BIT_AN;

BTFSC FLAG,0;If "begin bit" set,then

BRA RES_AN;goto to analizing bit.

;

BTFSC INTCON,TMR0IF

LFSR FSR1,IRDA1

MOVLW B'00000001';set "begin receiving",

MOVWF FLAG;Reset flag "timer overflow"

CLRF COM_BUF;clear variables

BCF INTCON,TMR0IF

CLRF BIT;

BRA int_end;

RES_ANBTFSC INTCON,TMR0IF;If TMR0 overflow then error

BRA err

;Verifing...

MOVLW 0x6D;4 ms13 ms

CPFSGT PERIOD;normal 15 ms

BRA err;error if time is short

MOVLW 0xCB;6 ms17 ms

CPFSLT PERIOD;

BRA err;error if time is long

BSF FLAG,1;Set flag "START BIT"

BRA int_end

BIT_ANBTFSC INTCON,TMR0IF

BRA err

MOVLW 0x46;23-2.3 ms

CPFSLT PERIOD;12 ms

BRA err;error if time>H1 (normal 10 ms)

MOVLW 0x1A;old=43

CPFSGT PERIOD;0A-0.7 ms3 ms

BRA err;error if time<L0 (normal 5 ms)

;END of verifing

RLNCF COM_BUF;

MOVLW 0x30;14<X<1A

CPFSLT PERIOD;

BSF COM_BUF,0;if time>H0 then bit is "1"

CPFSGT PERIOD;

BCF COM_BUF,0;if time<H0 then bit is "0"

INCF BIT,F;

MOVLW .8

CPFSLT BIT

BSF FLAG,2;Next bit will be parity

BRA int_end;

PARITYBTFSC INTCON,TMR0IF

BRA err

MOVLW 0x46;23-2.3 ms

CPFSLT PERIOD;12 ms

BRA err;error if time>H1 (normal 10 ms)

MOVLW 0x1A;0A-0.7 msold=43

CPFSGT PERIOD;3 ms

BRA err;error if time<L0 (normal 5 ms)

MOVLW 0x30

CPFSLT PERIOD;

BSF FLAG2,0;if time>H0 then bit is "1"

CPFSGT PERIOD;

BCF FLAG2,0;if time<H0 then bit is "0"

;create received byte

MOVFF IRDA2,COMMAND

MOVFF IRDA3,PASS1

MOVFF IRDA4,PASS2

MOVFF IRDA5,PASS3

MOVFF IRDA6,PASS4

BSF REM_FLAG,3;Set flag "COMMAND" not executed

int_endBCF INTCON,INT0IF

MOVFF BSR_TEMP,BSR

MOVF W_TEMP,W

MOVFF STATUS_TEMP,STATUS

RETFIE

;-------Start of program----------------------------

STARTCLRF PORTA;

CLRF PORTB;Clear

CLRF PORTC;I/O ports

CLRF PORTD;

CLRF PORTE;

MOVLW B'00001111';

MOVWF TRISA;

SETF TRISB;

MOVLW B'11011000';

MOVWF TRISC;

CLRF TRISD;

CLRF TRISE;

MOVLW B'11010101';TMR0 16-bit counter

MOVWF T0CON;subdivider 1:64

;interrupts

MOVLW B'11010000';

MOVWF INTCON;

MOVLW B'10000000';INT1 fall_pulse

MOVWF INTCON2;

MOVLW B'00001000';Enable INT1 interrupt

MOVWF INTCON3;

MOVLW B'00000011';

MOVWF PIE1;interrupt TMR1,TMR2 enable

MOVLW B'00000000';All interrupts low priority

MOVWF IPR1;

MOVLW B'00000000';

MOVWF IPR2;

BSF RCON,7;Приоритетная система прерываний вкл.

;TMR1 setup

MOVLW B'00000001';TMR1 is active

MOVWF T1CON;subdivider 1:1

;TMR2 setup

MOVLW B'00001111';Enable, subdivider 1:16

MOVWF T2CON;

;A/D setup

MOVLW B'00000001';A/D enable

MOVWF ADCON0;CLK is Fosc/4

MOVLW B'01001110';Left justify;0 analog channels

MOVWF ADCON1;VDD and VSS references

;MSSP setup

MOVLW 0x0A;100 kHz

MOVWF SSPADD;Set speed

MOVLW B'00101000';MSSP enabled,

MOVWF SSPCON1;I2C Master mode

;Usart setup

MOVLW B'00100000';Asynchronic,8bit transfer

MOVWF TXSTA;low speed mode

MOVLW B'10010000';UART on

MOVWF RCSTA

MOVLW B'00011001';2400 baud,error +1.67%

MOVWF SPBRG

CLEARLFSR FSR0,00;

clCLRF POSTINC0;

MOVLW .100;

CPFSEQ FSR0L;

BRA cl;

;-------Main program block------------------------------

PROGALFSR FSR1,IRDA1

RCALL I2C_STOP_

MOVLW B'10010000'

MOVWF SLAVE_TRM

MOVFF SLAVE_TRM,I2C_ADDR

MOVLW 0xEE

MOVWF I2C_DATA

RCALL I2C_COM;Command 'start converting'

RCALL LCD_INIT;

CLRF TBLPTRU;Set message adress 7000

MOVLW B'01110000';

MOVWF TBLPTRH;

CLRF TBLPTRL;

RCALL LCD_LD1;

RCALL LCD_LD2;

RCALL LCD_PR1;

RCALL LCD_PR2;Приветствие

RCALL DELL;Pause

RCALL LCD_CLR1

RCALL LCD_CLR2

BSF EVENTS,4

;-------Start program---------------------------------------

CONNECTRCALL M_NO_CONN;Show message "Нет подлючения!"

MOVLW B'00100000';

MOVWF TBLPTRL;Show message "Температура"

RCALL LCD_LD2;

RCALL TERM_DISP;Measure and display temperature

RCALL ADC_CONV

RCALL LCD_PR2

begBTFSC EVENTS,4

RCALL UART_ST

RCALL TERM_DISP;Measure and display temperature

RCALL ADC_CONV

;1-----Start receiving!-----------------

LFSR FSR0,PACK1

PACK_RXRCALL UART_RD

BTFSC EVENTS,4;If CONNECT ERROR then restart

BRA CONNECT

MOVFF UART_DATA,POSTINC0

MOVLW 0x4B

CPFSEQ FSR0L

BRA PACK_RX

MOVFF PACK2,HL_STAT

MOVFF PACK3,TERMAL_L

MOVFF PACK4,TERMAL_H

MOVFF PACK5,AD_VREF

MOVFF PACK6,SENSOR_MODE

;-Transmite-----------------------------------------

PACK_TXMOVLW .16;Set address of device

MOVWF PACK_OUT1;

MOVFF SENS1_STAT,PACK_OUT2;

MOVFF SENS2_STAT,PACK_OUT3;

MOVFF AD,PACK_OUT4;

MOVFF TERMAL,PACK_OUT5;

MOVFF ADD_BYTE,PACK_OUT6

LFSR FSR0,PACK_OUT1;Write data to terminal

txMOVF POSTINC0,W;

RCALL UART_WRT;

RCALL M_DEL;6 bytes...

MOVLW 0x55;

CPFSEQ FSR0L;

BRA tx;

asddRCALL LCD_PR1

RCALL LCD_PR2

;+++++++++++Place for main subroutine+++++++++++++++

BTFSS HL_STAT,7

BRA m_block

BCF SENS1_STAT,5;Reset flag "Change status HL1"

BCF SENS1_STAT,6;Reset flag "Change status HL2"

BCF SENS1_STAT,7;Reset flag "Change status "HL3"

BCF SENS2_STAT,6;Reset flag "Was command from IRDA"

BCF SENS2_STAT,7;Reset flag "Change security mode"

sens_vrCLRF PASS1

CLRF PASS2

CLRF PASS3

CLRF PASS4

BTFSC SENS1_STAT,0;Set flag "perimetr error"

BSF EVENTS,1;if sensors unlock

BTFSC SENS1_STAT,1;

BSF EVENTS,1;

BTFSC SENS1_STAT,2;

BSF EVENTS,1

re2MOVF AD_VREF,W

CPFSLT AD

BSF EVENTS,1

re3MOVF TERMAL_H,W

CPFSLT TERMAL

BSF EVENTS,2;if TERMAL>TERMAL_H

MOVF TERMAL_L,W;

CPFSGT TERMAL;if TERMAL<TERMAL_L

BSF EVENTS,3;

BTFSS EVENTS,2;

BRA re4

RCALL M_FIRE;FIRE CONTROL

BSF REM_FLAG,5

BRA gym2

re4BTFSS HL_STAT,3;if mode=off then ok

BRA gym

RCALL M_ACES_NO;

BTFSC EVENTS,1;If sensors unlock,

RCALL M_PERIM;Show message "Периметр нарушен"

BTFSC EVENTS,1

BSF REM_FLAG,5

BTFSC EVENTS,3

BSF REM_FLAG,5

BTFSC EVENTS,3

RCALL M_COLD;Show message "Переохлаждение!"

BRA gym2

;+++++++++++End of place for main subroutine+++++++++++++++++++

gymRCALL M_ACES_OK

gym2BTFSS HL_STAT,4;Verifying reset command from PC

BRA main_end

BCF EVENTS,1;Reset perimetr

BCF EVENTS,2;Reset fire

BCF EVENTS,3;Reset cold

BCF EVENTS,4;Reset connect error

BCF PORTC,5;Reset ALARM_LIGHT

BCF PORTA,5;Reset flag for external system

BCF ADD_BYTE,0

BCF REM_FLAG,5;Reset flag ALARM_LIGHT

CLRF PASS_ERR

main_endBRA beg

;++++++++++++++++++++++++++++++++++++++++++++++++++++++

GOTO FINAL

;--------------------------------------------------------

;Different subroutines

;--------------------------------------------------------

M_DELMOVLW .49

MOVWF CYC2

mdl1DECF CYC2,F

MOVLW .255

MOVWF CYC

mdlDECF CYC,F

TSTFSZ CYC

BRA mdl

TSTFSZ CYC2

BRA mdl1

RETURN

;--------------------------------------------------------

UART_WRTMOVWF TXREG

BTFSS PIR1,4

BRA $-2

BCF PIR1,4

RETURN

;--------------------------------------------------------

UART_STBCF EVENTS,0

BCF EVENTS,1

BCF EVENTS,2

BCF EVENTS,3

BCF EVENTS,5

BCF PIR1,5

BCF EVENTS,4

BCF RCSTA,4

BSF RCSTA,4

ur_stBTFSS PIR1,5

BRA $-2

BCF PIR1,5

MOVFF RCREG,UART_DATA

MOVLW .238

CPFSEQ UART_DATA

BRA ur_st

RETURN

;--------------------------------------------------------

UART_RDRCALL UART_WAIT

MOVFF RCREG,UART_DATA

RETURN

;--------------------------------------------------------

DELLMOVLW .8;8-Time delay.

MOVWF TIME_DEL;Variable LSD is

tmdTSTFSZ TIME_DEL

BRA tmd

RETURN

;--------Sub-zero termo-correction-------------------------

TERM_CORRMOVLW 2D;"-"

MOVWF MSD;MSD used temporary

BCF SENS1_STAT,3

MOVF I2C_BYTE1,W

SETF I2C_BYTE1

SUBWF BYTE1

RETURN

;-------------------------------------------------------

TERMOSCANMOVFF SLAVE_TRM,I2C_ADDR;Slave-address DS1621

MOVLW 0xAA;Command "Read temperature"

MOVWF I2C_DATA

RCALL I2C_2RD

RETURN

;-----------------------------------------------------------

M_NO_CONNMOVLW B'1110000';

MOVWF TBLPTRL;Show message "Нет подключения!"

RCALL LCD_LD1;

RCALL LCD_PR1

RETURN

;-----------------------------------------------------------

M_ACES_OKMOVLW B'00110000';

MOVWF TBLPTRL;Show message "Доступ разрешен"

RCALL LCD_LD1;

RCALL LCD_PR1

RETURN

;-----------------------------------------------------------

M_FIREMOVLW B'01000000';

MOVWF TBLPTRL;Show message "Пожарная тревога!"

RCALL LCD_LD1;

RCALL LCD_PR1

BSF PORTA,5;Set flag for external system

RETURN

;-----------------------------------------------------------

M_PERIMMOVLW B'01010000';

MOVWF TBLPTRL;Show message "Периметр нарушен!"

RCALL LCD_LD1;

RCALL LCD_PR1

BSF PORTA,5;Set flag for external system

RETURN

;-----------------------------------------------------------

M_COLDMOVLW B'10000000';

MOVWF TBLPTRL;Show message "Переохлаждение!"

RCALL LCD_LD1;

RCALL LCD_PR1;

BSF PORTA,5;

RETURN

;-----------------------------------------------------------

M_ACES_NOMOVLW B'01100000';

MOVWF TBLPTRL;Show message "Доступ запрещен!"

RCALL LCD_LD1;

RCALL LCD_PR1

RETURN

;-----------A/D Converting----------------------------------

ADC_CONVMOVLW D'20'

MOVWF DEL_ADC

DECFSZ DEL_ADC,F

BRA $-2

BSF ADCON0,GO;Start A/D conversion

WaitBTFSS PIR1,ADIF;Wait for conversion to complete

BRA $-2

BCF PIR1,ADIF

MOVFF ADRESH,AD

RETURN

;-------Looped end of program----------------------------

FINALNOP

BRA FINAL

END


Подобные документы

  • Интегрированная система, концепция и особенности интеллектуальных зданий. Принципы построения системы управления зданием. Принципы управления распределением энергоресурсов. Отопление с централизованным управлением, управление отопительными приборами.

    реферат [83,5 K], добавлен 05.08.2010

  • Особенности применения светодиодной индикации в микроконтроллерных системах. Характеристика основных приемов программирования универсальных портов ввода-вывода микроконтроллеров AVR. Этапы проектирования елочной гирлянды с микроконтроллерным управлением.

    лабораторная работа [291,7 K], добавлен 17.11.2012

  • Архитектура микроконтроллеров AVR и PIC. Описание и структура регистров из области ввода/вывода. Внутренняя и внешняя память SRAM микроконтроллеров AVR. Особенности аналого-цифрового преобразования. Переключение в режим параллельного программирования.

    лекция [755,2 K], добавлен 28.05.2010

  • Политика защиты информации. Возможные угрозы, каналы утечки информации. Разграничение прав доступа и установление подлинности пользователей. Обзор принципов проектирования системы обеспечения безопасности информации. Межсетевой экран. Антивирусная защита.

    дипломная работа [1,9 M], добавлен 05.11.2016

  • Анализ однокристальных микроконтроллеров MCS-51, основное назначение. Рассмотрение особенностей системы регистрации уровня со сбором информации и клапаном управления. Микросхема 80С554 как 8-разрядный микроконтроллер, изготовленный по КМОП-технологии.

    контрольная работа [316,0 K], добавлен 23.12.2012

  • Выбор элементной базы. Разработка системы управления отопительного котла на основе семейства восьмибитных микроконтроллеров фирмы Atmel с архитектурой AVR на языке Assembler. Усилитель сигнала датчика температур. Схема подключения шагового двигателя.

    курсовая работа [2,5 M], добавлен 26.11.2012

  • Применение современных микроконтроллеров как одного из перспективных аппаратно-программных средств информационных систем. Общие принципы построения микроконтроллеров, их типовая структура. Разработка программы расчета задержек на языке ассемблер.

    курсовая работа [719,2 K], добавлен 22.04.2019

  • Устройство и назначение однокристальных микроконтроллеров, сферы их применения. Разработка контроллера для управления домашней метеостанцией: расчет принципиальной схемы и характеристика ее элементов, выбор датчиков. Описание программы управления.

    курсовая работа [280,3 K], добавлен 28.12.2012

  • Разработка проекта аппаратной реализации сетевой игры "Пинг Понг", рассчитанной на двух игроков на базе микроконтроллеров AVR АТMEGA 128. Выполнение прошивки микроконтроллера с помощью пользовательского интерфейса среды программирования CodeVisionAVR.

    курсовая работа [1,2 M], добавлен 25.04.2012

  • Устройство и назначение однокристальных микроконтроллеров, сферы их применения. Разработка контроллера для управления роботизированной платформой, ориентированной на движение по напольной линии. Расчет функциональной и принципиальной схемы управления.

    курсовая работа [540,6 K], добавлен 28.12.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.