Разработка технического устройства, ведущего счет вошедших и вышедших посетителей супермаркета, на основе микроконтроллера ATtiny2313
Содержание
Введение
Темой дипломного проекта, является разработка технического устройства, ведущего счет вошедших и вышедших посетителей супермаркета, на основе микроконтроллера ATtiny2313.
Применение микропроцессорного проектирования в нынешнее время очень важно. Эта предметная область значительно упрощает нашу жизнь, повышает производительность и точность работ, снижая их стоимость.
Задача заключается в следующем: необходимо учитывать число людей прошедших через турникет, фиксируя это число с привязкой к реальному времени. Баланс, прибывших/убывших в здание. Разработать алгоритм учета, исключающий ошибки. Выдача результата на центральный ПК по запросу.
Счетчики посетителей обеспечивают сбор и анализ информации о количестве посетителей, находящихся в торговой точке в текущий момент и за прошедшие периоды. Этот тип статистической информации может быть использован для:
- оценки дизайна здания и инженерных сооружений с точки зрения удобства и безопасности посетителей;
- анализа тенденций посещений торгового центра;
- распределения персонала по "горячим" зонам в часы пик;
- принятия решений об открытии/закрытии дополнительных кассовых проходов и входов/выходов;
- проведения маркетинговых кампаний.
Эта задача может быть как автономного характера, так и подзадачей системы. Данная работа может послужить хорошим помощником системы безопасности какой-либо организации. К примеру, в момент чрезвычайного происшествия, можно узнать какое количество людей осталось в здании, которым нужна помощь. Или по завершению рабочего дня кто-то остался в цехе, заплутал в здании, на важном объекте. Таким образом, это программно техническое устройство может быть как спасателем, так и сторожем.
Система представляет собой комплекс подсчета из датчиков, которые крепятся на входную группу и отслеживают количество посещений.
Прибор
основан на ИК светодиодах и фототранзисторах
– это элементы с низким энергопотреблением,
у которых сохраняется высокая
чувствительность, и быстродействие до
долей секунд.
1 Обзор литературы (имеющихся решений по аналогичным устройствам)
Ⅰ. Счётчики посещаемости УМУП(П)
Модули учета
УМУП-П предназначены для
Конструктивно УМУП–П представляет из себя счетчик, состоящий из управляющего модуля и разнесенных оптических датчиков. В качестве датчиков используются двулучевой излучатель и инфракрасный приемник.
Технические характеристики:
- режим индикации счетчика посетителей с возможностью в любой момент начать счет с нуля (режим сменной индикаций - «С»);
- режим индикации накопительного счетчика посетителей без возможности обнуления показаний счетчика с энергонезависимой памятью (накопительный режим - «Н»);
- счет в одном направлении;
- расстояние между датчиком инфракрасного излучения, м, не боле 10
- максимальная скорость счета, (посетителей), шт/сек 10
- режим работы круглосуточный, необслуживаемый
- полный срок службы не менее, лет 10
- максимальное количество подсчитываемых проходов 9.999.999
- остальные характеристики такие же, как и у УМУП-А
Ⅱ.OdexPro Light - горизонтальный
счетчик посетителей с дисплеем.
Работа счетчиков
посетителей основана на двойном прерывании
инфракрасного луча, что позволяет определить
направление движения посетителя. Информация
со счетчиков посетителей передается
на компьютер ( на расстояние до 500 м ). К
одному компьютеру может быть подключено
до 16 счетчиков посетителей. Счетчики
посетителей обеспечивают регистрацию
посетителей в проходах шириной до 7 м
с точностью до 95%.
Технические характеристики:
- подсчет в двух направлениях: "вход" или "выход" (по выбору);
- отображение результатов подсчета на табло;
- регистрация до 10 000 проходов;
- кнопка сброса данных подсчета;
- компактные размеры (9 Х 2 Х 5 см);
- возможность установки на сервисной стойке.
Ⅲ.
Cистема подсчета Detex Line (имеет две версии
Easy, Standard)
Сенсоры системы
подсчета устанавливаются во всех проходах,
где необходим подсчет посетителей, на
расстоянии не более 100 м от них устанавливаются
регистраторы событий (с расчетом 1 регистратор
на 2 прохода). Регистраторы событий осуществляют
управление сенсорами системы подсчета
посетителей и накапливают статистику
в энергонезависимой памяти. Накопленная
статистика передается в персональный
компьютер и предстает пользователю в
виде удобных графиков и отчетов, анализируя
которые пользователь делает те или иные
выводы.
Технические характеристики:
- двунаправленный подсчет посетителей;
- возможность подсчета в двух проходах;
- память статистики на 1 год (аппаратная память);
- просмотр статистики на экране счетчика посетителей;
- просмотр статистики входов и выходов из магазина раздельно на экране счетчика;
- сохранение статистики при отсутствии электропитания.
- блокировка кнопок счетчика посетителей и выключение его дисплея;
- просмотр отчетов и графиков на экране ПК;
- просмотр детализированных отчетов (по часам, дням, неделям, месяцам) за любой период;
- ручной и автоматический экспорт статистики в файл;
- печать отчетов и графиков;
2 Основная часть
2.1 Описание предметной области
В торговых предприятиях сенсоры систем подсчета посетителей устанавливают на входах в торговый зал, на входах в бутики, расположенные внутри торгового зала, на различных проходах и в зонах, где требуется производить подсчет посетителей и получать статистику посещений.
Счетчики, установленные на входах, позволяют выяснить общее количество посещений магазина за день (за неделю, за месяц и т.д.), и получить отчет, иллюстрирующий динамику этих посещений. Сравнивая полученные результаты посещений с отчетностью о совершенных покупках и анализируя полученную информацию, можно спланировать рекламную кампанию торгового предприятия так, чтобы она охватила как можно большее количество потенциальных покупателей. Вместе с тем при использовании систем подсчета можно достоверно, а не «на глаз» оценить эффективность уже проведенной рекламной кампании, а также выявить негативные моменты в оформлении торгового зала, способствующие снижению покупательской активности.
Для этого, имея установленные на входах счетчики посетителей, достаточно задаться простыми вопросами:
- как изменилось количество посетителей во время проведения рекламной кампании?
- как изменилось количество посетителей после изменений в оформлении торгового зала или после введения новой схемы расположения товаров внутри торгового зала?
- Как изменилось отношение количества посетителей к количеству совершенных покупок во время рекламной кампании или после нововведений?
Системы подсчета посетителей это:
- подробная статистика посещаемости магазина и количества проходов покупателей к определенным зонам торгового зала;
- анализ факторов, влияющих на посещаемость магазина;
- планирование стратегии развития бизнеса на основании данных о динамике посещаемости;
- прогнозирование посещаемости магазина;
- повышение качества обслуживания покупателей за счет организованной подготовки к прогнозируемому повышению посещаемости;
- безошибочные расчеты параметров рекламных кампаний и других мероприятий;
- оценка эффективности проводимых рекламных кампаний;
- оценка качества работы магазина;
- повышение эффективности работы магазина;
- безошибочное планирование рабочего времени персонала;
- оценка целесообразности открытия и закрытия дополнительных входов в торговый зал.
Счетчики посетителей, установленные внутри торгового зала, помогают определить направления движения покупателей и выявить наиболее популярные у покупателей маршруты, а значит, расположить товар внутри магазина таким образом, чтобы представить его покупателю в наиболее выгодном свете.
Системы подсчета посетителей помогают точно отладить работу торгового предприятия, направить работу на получение наибольшей прибыли и уменьшение затрат - оптимизировать распределение потоков посетителей по площади предприятия, направлять потоки в наиболее прибыльные зоны (к ресторанам, кафе).
Используя данные накопленной статистики, можно с высокой степенью точности предсказать количество посещений в тот или иной день и избежать лишних затрат на заработную плату сотрудникам, а также избежать их чрезмерной загруженности, неизбежно ведущей к ухудшению качества обслуживания покупателей.
Это особенно важно
для крупных супермаркетов, где
часто из-за неправильного распределения
рабочего времени кассиров происходит
либо настоящее столпотворение на кассовых
узлах из-за недостатка работающих терминалов,
либо кассиров оказывается гораздо больше,
чем это необходимо для качественного
обслуживания покупателей.
2.2 Постановка задачи
Проект состоит
из следующих частей:
- Разработка модели функциональной схемы;
- Алгоритм работы схемы;
- Расчет основных параметров;
- Разработка узлов/блоков системы:
- обеспечивающей работу приема ИК излучений;
- интерфейса USART, обеспечивающего связь с персональным компьютером;
- часов реального времени, взяв за основу микросхему DS1307;
- Программирование микроконтроллера, который принимает входные данные, считает и сохраняет их с учетом реального времени. И выдает выходные данные, по запросу, на персональный компьютер;
- Макетирование с использованием конструкторских приложений (ExpressPCB, Electronics Workbench Multisim, sPlan 6.0 );
- Изготовление и отладка макетов , как можно меньше в размерах, для того чтобы изготовление обошлось дешевле.
2.3 Функциональное требование
Функции, по средству
которых пользователь данного технического
устройства мог бы выполнить свои
задачи.
«Фиксирующая часть» представляет собой следующие требования:
- Работоспособности системы;
- Настройки ИК – излучателей и приемников;
- Правильной фиксации входа/выхода;
- Хода часов реального времени;
- Регулярное сохранение полученных данных;
- Компактность;
- Помехоустойчивость;
«Пользовательская часть» состоит из следующих функций:
- Отклик с фиксирующего центра;
- Предоставление отчетности контроллером с учетом времени;
- Просмотр отчетности;
- Изменение статей информации;
2.4 Используемые инструменты.
Для выполнения
данной работы использованы такие инструменты
и программное обеспечение как:
- Windows7
- AVRStudio
- Adobe Reader 9.0
- WinDjView
- Mozilla Firefox
- Electronics Workbench Multisim
- sPlan 6.0
- ExpressPCB
2.5 Функциональная схема
Прибор может работать
без персонального компьютера, так как
основные функции выполняет микроконтроллер.
Программой выполняются: анализ, счет
и преобразования входных данных, накопление,
а также осуществляется передача данных
по запросу с персонального компьютера.
Функциональная
схема
2.6 Алгоритм обработки информации микроконтроллером
3. Экспериментальные результаты
3.1 Выбор типа микроконтроллера
Исходя из структурной схемы, рассмотрим необходимые технические характеристики микроконтроллера:
- Встроенной программируемой памяти Flash (2Кбайт);
- Встроенной программируемой энергозависимой памяти данных EEPROM (128байт);
- Внутреннего ОЗУ SRAM (128байт);
- Один 8-разрядный таймер/счетчик с программируемым предделителем и режимом совпадения;
- Один 16-разрядный таймер/счетчик с программируемым предделителем и режимом совпадения и режимом захвата;
- Встроенный аналоговый компаратор;
- Программируемый сторожевой таймер и встроенный тактовый генератор;
- USART;
- Напряжение питания 2,7-5,5В.
Выбор микроконтроллера
осуществлялся из семейства AVR, производимого
фирмой Atmel. Эти микроконтроллеры позволяют
решать множество задач . Они отличаются
от других распространенных в настоящее
время микроконтроллеров большей скоростью
работы, большей универсальностью. Быстродействие
данных микроконтроллеров позволяет в
ряде случаев применять их в устройствах,
для реализации которых ранее можно было
применять только 16-разрядные микроконтроллеры,
что позволяет ощутимо удешевить готовую
систему.
3.2.Выбор среды программирования микроконтроллера.
Для
микроконтроллеров семейства
Из существующих СИ компиляторов, был
выбран AVR Studio 4.
AVR
Studio — интегрированная среда разработки
(IDE) для разработки 8-битных AVR приложений
от компании Atmel, работающая в операционных
системах Windows NT/2000/XP/Vista/7. AVR Studio содержит
ассемблер и симулятор, позволяющий отследить
выполнение программы. Текущая версия
поддерживает все выпускаемые на сегодняшний
день контроллеры AVR и средства разработки.
AVR Studio содержит в себе менеджер проектов,
редактор исходного кода, инструменты
виртуальной симуляции и внутрисхемной
отладки, позволяет писать программы на
ассемблере или на C/C++. В силу перечисленных
достоинств AVR Studio может считаться удобной
средой разработки приложений для микроконтроллеров
AVR.
4. Заключение
Для реализации технического средства на данном этапе проделаны следующие виды работ:
- Изучены микросхемы и микроэлементы, входящие в техническое устройство;
- Изучено программное обеспечение AVRStudio;
- Совершенствование языков программирования ассемблер и С;
- Разработка алгоритма программного обеспечения для технического устройства;
В этот комплекс входят:
- Программы, ответственные за соединение оборудования с компьютером.
- Прикладная программа — обеспечивают работу с уже поступившими данными.
- Программирование на микроконтроллере серии ATtiny2313;
- Изучены общие принципы работы микроконтроллеров;
- Прочтение научной литературы и различных статей.
Далее планирую
реализовать сборку самого технического
устройства. Провести отладку всех
модулей и связать с
5. Список используемой литературы
1.
«Самоучитель
по микропроцессорной технике». Белов
А. В.2003
2. «Программирование на языке С для AVR и PIC микроконтроллеров».
Сост.
Ю.А. Шпак – К: «МК-Пресс», 2006
- 400стр.
3. «Микроконтроллеры
AVR в радиолюбительской технике». Белов
А. В. - СПб.: Наука и Техника, 2007 -
352стр.
4. Интернет-ресурс:
[Электрон.ресурс].- http://robozone.su/, http://infrared.h1.ru/, http://fi-com.ru/mcu/rc5 .
5. «Применение микроконтроллеров
AVR: схемы, алгоритмы, программы». – М.:
Издательский дом «Додэка - XXI», 2004 -
288стр.
Приложение 1. Текст программы
#include <avr/io.h>
#include <util/delay.h>
#include <stdio.h>
#include <avr/interrupt.h>
/*===========================
#define Fosc 8000000L
#define Baud 9600L
#define Ubrr (Fosc/(16*Baud)-1)
/* UART Buffer Defines */
#define USART_RX_BUFFER_SIZE 32 /* 2,4,8,16,32,64,128 or 256 bytes */
#define USART_TX_BUFFER_SIZE 32 /* 2,4,8,16,32,64,128 or 256 bytes */
#define USART_RX_BUFFER_MASK ( USART_RX_BUFFER_SIZE - 1 )
#define USART_TX_BUFFER_MASK ( USART_TX_BUFFER_SIZE - 1 )
#if ( USART_RX_BUFFER_SIZE & USART_RX_BUFFER_MASK )
#error RX buffer size is not a power of 2
#endif
#if ( USART_TX_BUFFER_SIZE & USART_TX_BUFFER_MASK )
#error TX buffer size is not a power of 2
#endif
/* Static Variables */
static unsigned char USART_RxBuf[USART_RX_BUFFER_
static volatile unsigned char USART_RxHead;
static volatile unsigned char USART_RxTail;
static unsigned char USART_TxBuf[USART_TX_BUFFER_
static volatile unsigned char USART_TxHead;
static volatile unsigned char
USART_TxTail;
/* Prototypes */
void USART_Init( unsigned int baudrate );
unsigned char USART_Receive( void );
void USART_Transmit( unsigned
char data );
void USART_Init( unsigned int baud )
{
unsigned char x=0;
/* Set baud rate */
UBRRH = (unsigned char)(baud>>8);
UBRRL = (unsigned char)baud;
/* Enable receiver and transmitter */
UCSRB = (1<<RXEN)|(1<<TXEN);
/* Set frame format: 8data, 2stop bit */
UCSRC = (1<<USBS)|(3<<UCSZ0);
/* Flush receive buffer */
USART_RxTail = x;
USART_RxHead = x;
USART_TxTail = x;
USART_TxHead = x;
}
/* Initialize USART */
/*void USART0_Init( unsigned int baudrate )
{
unsigned char x=0
*/
/* Enable UART receiver and transmitter */
/* UCSRB = ( ( 1 << RXCIE
) | ( 1 << RXEN ) | ( 1 << TXEN ) );*/
/* Set frame format: 8 data 2stop */
//UCSRC
= (1<<USBS)|(1<<UCSZ1)|(1<<
/* UCSRC = (1<<URSEL)|(1<<USBS)|(1<<
*/
/* Flush receive buffer */
/* USART0_RxTail = x;
USART0_RxHead = x;
USART0_TxTail = x;
USART0_TxHead = x;
}*/
/* Interrupt handlers */
ISR (SIG_UART_RECV)
{
unsigned char data;
unsigned
char tmphead;
/* Read the received data */
data = UDR;
/* Calculate buffer index */
tmphead = ( USART_RxHead + 1 ) & USART_RX_BUFFER_MASK;
USART_RxHead
= tmphead; /* Store new index */
if ( tmphead == USART_RxTail )
{
/* ERROR! Receive buffer overflow */
}
USART_RxBuf[tmphead] = data; /* Store received data in buffer */
}
ISR (USART_UDRE_vect)
{
unsigned
char tmptail,un_volatile=USART_
/* Check if all data is transmitted */
if ( un_volatile != USART_TxTail )
{
/* Calculate buffer index */
tmptail = ( USART_TxTail + 1 ) & USART_TX_BUFFER_MASK;
USART_TxTail = tmptail;
/* Store new index */
UDR = USART_TxBuf[tmptail]; /* Start transmition */
}
else
{
UCSRB &= ~(1<<UDRIE); /* Disable UDRE interrupt */
}
}
/* Read and write functions */
unsigned char USART_Receive( void )
{
unsigned
char tmptail, un_volatile = USART_RxTail;
while ( un_volatile == USART_RxHead ) /* Wait for incomming data */
;
tmptail
= ( USART_RxTail + 1 ) & USART_RX_BUFFER_MASK;/* Calculate buffer
index */
USART_RxTail
= tmptail;
/* Store new index */
return
USART_RxBuf[tmptail];
}
void USART_Transmit( unsigned char data )
{
unsigned char tmphead;
/* Calculate buffer index */
tmphead = ( USART_TxHead + 1 ) & USART_TX_BUFFER_MASK;
/* Wait for free space in buffer */
while
( tmphead == USART_TxTail );
USART_TxBuf[tmphead] = data; /* Store data in buffer */
USART_TxHead
= tmphead;
/* Store new index */
UCSRB |= (1<<UDRIE); /* Enable UDRE interrupt */
}
unsigned char DataInReceiveBuffer0( void )
{
unsigned char un_volatile = USART_RxHead;
return ( un_volatile != USART_RxTail ); /* Return 0 (FALSE) if the receive buffer is empty */

- Разработка технической документации по изготовлению мужской куртки с отделкой из искусственного меха
- Разработка технологии бактериального концентрата, обогащенного пищевыми волокнами
- Разработка технологии восстановления деталей сложной формы типа «Вилка скользящая» карданного вала автомобиля ЗИЛ 433410
- Разработка технологии восстановления шатунов ДВС
- Разработка технологии горячего блюда из мяса птицы и подбор средств измерения для контроля качества
- Разработка технологии компьютерного тестирования
- Разработка технологии настойки ландыша
- Разработка твердотопливной горелки
- Разработка теоретических и практических рекомендаций по адаптации МСФО-41 в отдельно взятом сельскохозяйственном предприятии ООО «ГК «Не
- Разработка теоретических положений и практических рекомендаций по совершенствованию управления социально-экономическим развитием
- Разработка теоретических положений и практических рекомендаций по совершенствованию управления социально-экономическим развитием сел
- Разработка технико-технологических решений и мероприятий по борьбе с поглощениями бурового раствора на Мельниковском месторождении
- Разработка технических средств и методики контроля кольцевых швов малогабаритных емкостей
- Разработка технического обеспечения бортового комплекса противоугонной системы атомобилей