Разработка микропроцессорной системы управления электронными весами

Заказать уникальную курсовую работу
Тип работы: Курсовая работа
Предмет: Электроника
  • 30 30 страниц
  • 9 + 9 источников
  • Добавлена 22.01.2015
1 496 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
Содержание

Введение 3
1 Анализ существующих систем управления микропроцессорными электронными весами. 4
1.1 Датчики веса. Методы преобразования веса в электрический сигнал. 4
1.2 Обзор методов обработки сигнала датчиков. 7
2. Структурная схема микропроцессорной системы управления электронными весами 9
3. Функциональная схема микропроцессорной системы управления электронными весами 11
4. Описание работы микропроцессорной системы управления электронными весами 18
5. Построение алгоритма работы системы управления электронными весами 19
6. Разработка программы системы управления электронными весами. 21
7. Выбор и обоснования эмулятора МПС для отладки программы системы управления 22
8. Отладка программы микропроцессора системы управления электронными весами с применением эмулятора 23
Заключение 25
Список использованных источников 26
Приложения 27


Фрагмент для ознакомления

электрон.весами *; *; *;**********************************************************************;***** ОПИСАНИЕ ПЕРЕМЕННЫХcblock 0x7temp;НАЗНАЧАЕМ ПЕРЕМЕННЫЕcountA_byteS_byte; самый старший байт сумированияH_byte; средний байт (старший в математике)L_byteR0 ; ЗНАЧКИ ДЛЯ ЯЧЕЕК ПАМЯТИR1 R2 endccblock 0x10digit; ПЕРЕМЕННАЯ для вывода на индикаторcnt; служебный счетчикcnt0cnt1cnt2cnt_tmpadc_h; оцифрованный сигналadc_lzero_h; ДЛЯ ВЫВОДА ОШИБКИ ДИАПАЗОНАzero_lold_h; старые значенияold_lendc; распределение ножек портаportequ GPIOkey0equ 0; key >0 7movwf 0movlw 30addwf 0,Wmovwftempbtfsc temp,7 ; ПРОВЕРИТЬ, ЕСЛИ РЕЗУЛЬТАТ > 7movwf 0 ; СОХРАНИТЬ КАК MSDRETLW 0; *******************************************************************; Начало главной программы; *******************************************************************mainbcf STATUS,PA0; ИНИЦИАЛИЗАЦИЯmovlw b'10010100'OPTIONclrf TMR0clrwdt;clrf GPIOmovlw b'11111111'movwf GPIOmovlw b'11001001'; ИНИЦИАЛИЗАЦИЯ ПОРТОВ I/o; 1 - входtris GPIOnopnopmovlw b'00110110'movwfportclrfzero_hclrfzero_lclrfold_hclrfold_l; &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&; ОСНОВНОЙ ЦИКЛ ПРОГРАММЫ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%bodynop;calldelay - ВЫЗОВ ЗАДЕРЖКИbody1nop; подготовка регистровclrfA_byteclrfS_byteclrfH_byteclrfL_byte;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!; АЦП АЦПАЦП;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!; измеряем 2048 раз (примерно 0,7 секунды)adcadcmovlw .8movwf cnt0mmm1clrf cnt1mmm2clrfadc_hclrfadc_lbcfport,cs; началиnopnopbcfport,dclockcallshotcallshotbsfport,dclockcallshotcallshotbcfport,dclockcallshotcallshotbsfport,dclockcallshotcallshotbcfport,dclocknopnopnopnopbtfscport,dout; проверка на ошибкуgotoerr ; ПЕРЕХОД НА ПОДПРОГРАММУ "ОШИБКА"callshotbsfport,dclockcallshotcallshotmovlw .4; старшие 4 битаmovwfcnt_tmpadc3bcfport,dclocknopnopnopbtfssport,doutgoto adc1bsf STATUS,Cgoto adc2adc1bcf STATUS,Cadc2rlfadc_h,f;callshotbsfport,dclockcallshotcallshotdecfszcnt_tmpgoto adc3movlw .8; младшие 8 битmovwfcnt_tmpadc6bcfport,dclocknopnopnopbtfssport,doutgoto adc4bsf STATUS,Cgoto adc5adc4bcf STATUS,Cadc5rlfadc_l,f;callshotbsfport,dclockcallshotcallshotdecfszcnt_tmpgoto adc6bsfport,cs; ДОСТАТОЧНОmovfadc_h,wmovwfH_bytemovfadc_l,wmovwfL_bytegotoconvmovlw 0x00movwfadc_hmovlw 0x03movwfadc_lmovfadc_l,w; складываем все результатыaddwfL_byte,fbtfss STATUS,Cgoto mmm6incfH_byte,fbtfsc STATUS,ZincfS_byte,fmmm6movfadc_h,waddwfH_byte,fbtfsc STATUS,CincfS_byte,fmovlw .10; небольшая задержкаmovwf cnt2mmm3callshotdecfsz cnt2,fgoto mmm3decfsz cnt1,fgoto mmm2decfsz cnt0,fgoto mmm1body2nop; делим результат интегрирования входного напряжения на; число, кратное двум!movlw .11; сдвигаем N раз!movwfcnt_tmpsdvigbcf STATUS,CrrfS_byte,frrfH_byte,frrfL_byte,fdecfszcnt_tmp,fgotosdvig; усреднение по предыдущему значениюusredmovfH_byte,wmovwf cnt0movfL_byte,wmovwf cnt1movfold_l,waddwfL_byte,fbtfsc STATUS,CincfH_byte,fmovfold_h,waddwfH_byte,fbcf STATUS,CrrfH_byte,frrfL_byte,fmovf cnt0,wmovwfold_hmovf cnt1,wmovwfold_l; опрос кнопкиclrfcntmmm10btfsc port,key0goto mmm11decfszcnt,fgoto mmm10movfH_byte,w; новое значениеmovwfzero_hmovfL_byte,wmovwfzero_lmmm11; чуть-чуть прибавляемincfL_byte,f; увеличиваем на ?btfsc STATUS,ZincfH_byte,fincfL_byte,fbtfsc STATUS,ZincfH_byte,f; вычитаем из результата как-бы нольmovfzero_l,wsubwfL_byte,fbtfss STATUS,CdecfH_byte,fmovfzero_h,wsubwfH_byte,f; проверяем на отрицательное числоbtfsc H_byte,7gotonegot; проверяем на превышение ДИАПАЗОНАmovfH_byte,fbtfsc STATUS,Zgotoconvmovlw 0x0FsubwfH_byte,wbtfss STATUS,Cgotoconvbtfss STATUS,Zgotooverloadmovlw 0xD3subwfL_byte,wbtfss STATUS,Cgotoconvoverloadclrf R1; выводим символ перегрузкиmovlw 0x0Emovwf R2gotoinfo; если отрицательное числоnegotclrftemp; вычитаем отрицательный результат из 0movfL_byte,wsubwftemp,wbtfss STATUS,Cdecftemp,fmovwfL_bytemovfH_byte,wsubwftemp,wmovwfH_bytemovfH_byte,fbtfss STATUS,Zgoto negot1call B2_BCDmovlw 0x0Fandwf R1,wbtfss STATUS,Zgoto raz3movlw 0xF0andwf R2,wbtfss STATUS,Zgoto raz2raz1movlw 0x0Fandwf R2,fmovlw 0xF0addwf R2,fgotoinforaz3movlw 0x0Fandwf R1,fmovlw 0xF0addwf R1,fgotoinforaz2movlw 0xF0andwf R1,fmovlw 0x0Faddwf R1,fgotoinfonegot1movlw 0xFF; выводим прочерки, если отрицательное число.movwf R1movwf R2gotoinfo; выводим на индикатор полученное числоconvcall B2_BCD; -----------------------------------------------------------------------; п\п вывода на индикатор -----------------------------------------------; выводятся потетрадноinfoclrftemp; признак невывода нуляmovlw .6; выводим ничего в 6 знаковmovwfcntinfo10clrfdigitcalltetradadecfszcnt,fgoto info10movf R1,w; выводим 4 младшие значащие цифрыmovwfdigitmovlw 0xF0andwfdigit,fbtfss STATUS,Zgoto info20clrfdigitgoto info21info20incftempinfo21calltetradamovf R1,wmovwfdigitswapfdigit,fmovlw 0xF0andwfdigit,fbtfss STATUS,Zgoto info22movftemp,fbtfss STATUS,Zgoto info24clrfdigitgoto info23info24movlw 0xA0movwfdigitinfo22incftempinfo23calltetradamovf R2,wmovwfdigitmovlw 0xF0andwfdigit,fbtfss STATUS,Zgoto info25movftemp,fbtfsc STATUS,Zgoto info25movlw 0xA0movwfdigitinfo25calltetradamovf R2,wmovwfdigitswapfdigit,fmovlw 0xF0andwfdigit,fbtfss STATUS,Zgoto info26movlw 0xA0movwfdigitinfo26calltetrada; ---------------------------------------;----------------------------------------calldelaygotobodyerrcalldelaymovlw 0xDDmovwf R1movlw 0xDDmovwf R2gotoinfoEND ; конец программы

Список использованных источников

1. Сарры С.В. Программно-аппаратные средства микропроцессорных устройств релейной защиты электроэнергетических систем: учеб. пособие / Юж.-Рос.гос. техн. ун-т (НПИ). – Новочеркасск: ЮРГТУ, 2009. – 137 с.
2. Фигурнов В.Э. IBM PC для пользователя, 2-е изд., перераб. и доп. – М.: Финансы и статистика, Юнити, 1992. – 288 с., ил.
3. Калабеков Б.А., Мамзелев И.А. Цифровые устройства и микропроцессорные системы: Учебник для техникумов связи. - М.: Радио и связь, 1987. - 400 с.
4. Микропроцессоры и микроЭВМ в системах автоматического управления: Справочник/ С.Т.Хвощ, Н.Н.Варлинский, Е.А.Попов; Под общ. ред. С.Т.Хвоща. - Л.: Машиностроение, 1987. - 640 с.
5. Шило В. Л. Популярные цифровые микросхемы. Справочник. – М.: Радио и связь, 1988 – 352 с.
6. Боборыкин А. В. - Однокристальные микро¬ЭВМ. Справочник/ А. В. Боборыкин, Г. П. Липовецкий и др. М.: МИКАП, 1994.
7. http://www.atmel.com/MICROSITE/ATMEL_STUDIO6/
8. Эмулятор микропроцессорной системы на базе микропроцессора КР580ВМ80А (Intel 8080) Пенкин Ю.И., Улыбышев Д.А. (http://zic-homepage.narod.ru)
9. http://kazus.ru/programs/viewdownloaddetails/kz_0/lid_2257.html

Вопрос-ответ:

Какие методы преобразования веса в электрический сигнал используются в микропроцессорной системе управления электронными весами?

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

Какие методы обработки сигнала датчиков используются в микропроцессорной системе управления электронными весами?

В микропроцессорной системе управления электронными весами применяются различные методы обработки сигнала датчиков, такие как фильтрация, усиление, дискретизация и линеаризация. Эти методы позволяют улучшить точность измерения веса и обеспечить стабильную работу системы управления.

Какова структурная схема микропроцессорной системы управления электронными весами?

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

Какую функциональную схему имеет микропроцессорная система управления электронными весами?

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

Какие методы преобразования веса в электрический сигнал используются в микропроцессорных электронных весах?

В микропроцессорных электронных весах применяются различные методы преобразования веса в электрический сигнал. Один из таких методов - деформационный метод, основанный на использовании деформационных датчиков, таких как тензодатчики. Другой метод - метод магнитного измерения, который использует изменение магнитного поля при деформации весовой системы. Также применяются методы, основанные на использовании акселерометров, датчиков капаситивности и других принципов. Каждый метод имеет свои преимущества и недостатки, и выбор конкретного метода зависит от требуемой точности и функциональности весовой системы.

Какие методы обработки сигнала датчиков применяются в микропроцессорных системах управления электронными весами?

В микропроцессорных системах управления электронными весами используются различные методы обработки сигнала датчиков. Один из таких методов - фильтрация сигнала, которая позволяет удалить шумы и помехи из сигнала датчика. Другой метод - компенсация температурных изменений, которая позволяет учесть влияние температуры на работу датчика. Также применяются методы линейной и нелинейной коррекции, которые позволяют улучшить точность измерения веса. Конкретные методы обработки сигнала выбираются в зависимости от требований к точности и функциональности весовой системы.

Какова структурная схема микропроцессорной системы управления электронными весами?

Структурная схема микропроцессорной системы управления электронными весами состоит из нескольких основных компонентов. На первоначальном этапе сигналы с датчиков веса поступают на аналоговый усилитель, который усиливает сигналы и передает их на аналого-цифровой преобразователь. Затем преобразованные цифровые сигналы поступают на микропроцессор, который обрабатывает и анализирует эти сигналы. Микропроцессор также управляет периферийными устройствами, такими как дисплей и клавиатура. Взаимодействие между компонентами системы осуществляется посредством шины данных и управления.

Какие методы преобразования веса в электрический сигнал используются в современных датчиках?

В современных датчиках часто используется метод пружинного упругого измерения, основанный на деформации электрического сопротивления при приложении весовой нагрузки. Также применяются методы изменения частоты резонанса или емкости, методы электрического преобразования, в том числе с использованием чувствительных элементов на основе полупроводниковых материалов.

Какая структурная схема микропроцессорной системы управления электронными весами представлена в статье?

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