Виды штрихового кодирования
Штрих-код: история появления. Сферы применения штрих-кодов. Основные способы кодирования. История появления и развития популярных двумерных штриховых кодов. Технология печати и считывания штрих-кодов. Расчёт контрольного числа штрих-кодов товаров.
Рубрика | Маркетинг, реклама и торговля |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 14.03.2015 |
Размер файла | 2,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
- Введение
- 1. Теоретические аспекты кодирования товаров
- 1.1 Понятие и сущность кодирования
- 1.2 Штрих-код: понятие и история появления
- История изобретения штрихового кодирования
- Альтернативное решение
- Дальнейшие исследования
- 1.3 Сферы применения штрих-кодов
- 1.4 Способы кодирования
- Линейный способ
- Штриховой код EAN
- Штриховой код UPC
- Двумерный способ
- История появления и развития популярных двумерных штриховых кодов
- AZTEC
- Другие виды двумерного кода
- 1.5 Понятие контрольного числа
- Алгоритм расчёта контрольного числа для КОДА EAN
- Алгоритм расчёта контрольного числа для КОДА UPC
- 1.6 Технология печати и считывания штрих-кодов
- Печать и маркировка товара штриховым кодом
- Чтение штрих-кода
- 2. Расчёт контрольного числа штрих-кодов товаров
- Заключение
- Библиографический список
- Приложения
Введение
Одной из важнейших составляющих информационных технологий является сбор первичной информации об объектах, явлениях, свойствах и т.д. При этом чем она оперативней и точней, тем более достоверна и эффективна аналитическая информация, выдаваемая компьютером для принятия управленческих решений.
Современные компьютеры обрабатывают данные со скоростью, составляющей миллионы операций в секунду, и способны накапливать и хранить огромные массивы данных. Вместе с тем ручной ввод первичной информации через клавиатуру вопиюще несоизмерим по скорости и точности с возможностями компьютера. Причина состоит в том, что человек-оператор вводит, как правило, 3-5 знаков в секунду и допускает ошибку примерно на каждые 300 введенных знаков.
Медленный и не точный ввод данных с клавиатуры в значительной степени снижает эффективность применения компьютеров и во многих случаях не позволяет иметь оперативные данные, необходимые для принятия решений.
Как показывает зарубежный опыт, одним из наиболее широко применяемых способов быстрого и точного ввода данных в компьютерные системы является применение технологии штрихового кодирования, являющейся разновидностью технологии автоматической идентификации данных.
Актуальность темы проекта состоит в том, что в настоящее время штриховые коды широко используются не только при производстве и в торговле товарами, но и во многих отраслях промышленного производства для идентификации заготовок, изделий, упаковок, обозначения мест хранения, в почтовых ведомствах, транспорте и пр.
Целью данного курсового проекта является рассмотрение особенностей штрихового кодирования.
Задачи курсового проекта:
· изучение теоретических аспектов штрихового кодирования;
· изучение устройств для печати и считывания штрих-кода;
· расшифровка штрих-кодов непродовольственных товаров
Предмет исследования: штриховое кодирование.
Объект исследования: товары.
В данном курсовом проекте были использованы труды таких авторов как Швандар В.А., Петрище Ф.А., Ляшко А.А., Тимофеева В.А., а так же Гутюк Е.Н.
штриховое кодирование товар считывание
1. Теоретические аспекты кодирования товаров
1.1 Понятие и сущность кодирования
Кодирование - это упорядоченное образование условного обозначения (кода) и присвоение его объектам классификации, а так же классификационным группировкам [11].
Кодирование товаров - технический прием, позволяющий представить классифицируемый объект (товар) в виде знака или группы знаков по правилам, установленным данной системой классификации [11].
Код - это знак или совокупность знаков, используемых для обозначения объекта классификации и классификационной группировки [11].
Цель кодирования - систематизация объектов путем их идентификации и присвоения условного обозначения (кода) по которому можно найти и распознать любой объект среди множества других [9; 32].
Таким образом, в данной главе были рассмотрены понятие и сущность кодирования
1.2 Штрих-код: понятие и история появления
Штриховой код - знак, предназначенный для автоматизированных идентификации и учёта информации о товаре, закодированной в виде цифр и штрихов [11].
История изобретения штрихового кодирования
Впервые об автоматизации учёта товаров задумался Уоллес Флинт в своей дипломной работе на тему автоматизации торговли в американских супермаркетах, которая была защищена в 1932 году.У. Флинт предлагал покупателям будущего использовать перфокарты для осуществления покупок в крупных магазинах розничной торговли, которые испытывали все большие объемы поставок товаров. Его идея заключалась в том, что покупатель просто выбирает нужный товар, вносит его наименование в специальную перфокарту и отдает ее кассиру. Кассир считывает перфокарту с помощью автоматической системы, которая, в свою очередь, посылает запрос на компьютер склада. Таким образом, пока покупатель оплачивает покупку, система подаст на ленту транспортера нужные товары, автоматически учитывая факт продажи данных товаров. Однако эта идея так и не была реализована по ряду причин: во-первых, считывающее оборудование было огромным и стоило невероятно дорого, а, во-вторых, в то время американская экономика находилась на самом пике Великой депрессии, и владельцам магазинов было не до этих нововведений.
Современные штрих-коды, к которые мы привыкли видеть в магазина, придумал Норман Вудленд. А началось всё с разговора, состоявшегося в 1948 году между деканом Дрекселевского Технологического института (Филадельфия, США) и одного владельца сети супермаркетов. Предприниматель просил профессора организовать в рамках института работы по разработке системы автоматического учета товаров на кассах в торговом зале.
Если бы разговор бизнесмена и ученого состоялся с глазу на глаз, то вероятно супермаркеты никогда и не узнали о штрих-коде, а использовали какую-нибудь иную систему маркировки, более продвинутую или не столь эффективную, как штрих-код. Но так случилось, что разговор был подслушан аспирантом по имени Боб Сильвер. Сильвер тут же рассказал об этом разговоре своему другу, тоже аспиранту института, Норману Вудленду, который в свою очередь загорелся идеей создания такой системы и облегчить жизнь предпринимателей.
Первой их работающей системой стала маркировка на основе ультрафиолетовых чернил, которые со временем стирались и были достаточно дороги для нанесения на упаковку дешевых товаров.
Уверенный в том, что система при дальнейшей доработке будет полностью работоспособной, Вудленд покинул Университет Дрекселя и продолжил исследования в квартире отца, во Флориде. Вдохновением для разработки первой версии технологии, похожей на широко применяемые сегодня штриховые коды стал код Морзе.
Так описал Вудлен историю возникновения идеи: "Я сидел на пляже и думал о своем проекте. Затем мне в голову пришла идея с кодом Морзе. Я просто растянул чередующиеся точки и тире до чередующихся узких и широких линий". Позже изобретатель понял, что штрихи распознаются лучше, если их печатать в виде кругов (на манер мишени) - так можно избавиться от проблем с позиционированием образца при считывании - круг будет читаться при любом наклоне.
20 октября 1949 года Вудленд и Сильвер начали процесс патентования своего изобретения - патент описывал как "линейные", так и "круговые" паттерны, а заодно и механико-электронные устройства, способные считывать такие коды. Патент был выдан 7 октября 1952 года (US Patent 2,612,994).
В 1951 году Вудленд пошел в IBM и попытался заинтересовать корпорацию своей идеей, чтобы те выделили денег на дальнейшие разработки. В конечном итоге IBM состряпала отчет по штрих-кодам, которым заключила, что технологию реально воплотить в жизнь, и она достаточно интересна, однако обработка полученной со штрих-кода информации потребует оборудования и программных комплексов, которых на тот день просто не существовало. В 1952 году срок патента Вудленда и Сильвера истекал и Вудленд обратился с просьбой к руководству корпорации IBM выкупить этот патент, чтобы финансировать дальнейшие исследования в этой области. Ему было отказано и патент был переписан на компанию RCA.
Итак, некоторые руководители крупных компаний и корпораций все-таки поняли, что в этом незатейливом рисунке кроются неимоверные доходы, но в те времена мало, что можно было с этим поделать, но так как технический прогресс еще не позволял полноценно использовать все возможности штрих-кода. Поэтому про него забыли…
Альтернативное решение
Штриховое кодирование было изобретено молодым инженером Давидом Коллинзом. После окончания в 50-х годах инженерного факультета Массачусетского технологического института, он поступил работать на Пенсильванскую железную дорогу, где ему пришлось столкнуться с кропотливой, приносящей мало радости работой - сортировкой вагонов. Их надо пересчитать, оперативно выяснить номера, справиться по ним в документации, определить куда каждый должен следовать… Процедура довольно длительная, не гарантирующая безошибочности её выполнения. Тогда пришла идея освещать номера вагонов прожекторами и считывать их с помощью фотоэлементов. Чтобы упростить распознавание инженер-изобретатель предложил записывать номера не только обычными цифрами, но и специальным кодом, состоящим из красных и синих полос, расположенных на стенке вагона в прямоугольнике длиной до полуметра.
Рис. 1.2.2.
Испытания подтвердили: сканирующее устройство способно считывать коды даже при скорости движения вагона около 100 км/час. Но Коллинз не успокоился на этом. Достигнутый успех лишь подтолкнул его к дальнейшему совершенствованию системы. В 1968 году он перешел от прожекторов, требовавших изрядного расхода энергии, к жестко сфокусированному лазерному лучу, который превосходил аппарат созданный Вудлендом. Размеры сканирующей установки резко сократились. Меньше стала и сама кодовая маркировка.
Это в свою очередь натолкнуло Коллинза на мысль, что придуманный штриховой код можно использовать не только на железной дороге… Окрыленный успехом, Коллинз обратился к руководству "Сильвания Компани" с просьбой финансировать дальнейшие исследования в области бюштрих-кодирования и разработки аналогичной системы для продовольственных продуктов, но получил отказ. Не отчаиваясь, Коллинз основал свою собственную компанию - "Компьютер Айдентикс" (Computer Identics) - в которой он продолжал свои работы в сфере штрих-кодирования.
Дальнейшие исследования
В 1966 году состоялся специальный съезд владельцев торговых сетей США, на котором было решено серьезно заняться исследованиями в сфере маркировки штрих-кодом. Это постановление добавило некий стимул исследователям Компании RCA к разработке штрих-кодирования, тем более, что Компании все еще владела патентом Вудленда и Сильвера. Руководство компании RCA решительно озадачилось тем, чтобы в скором будущем предоставить предпринимателям оптимальную систему штрих-кодирования, которая могла бы считывать штрих-код с разных углов и с разного расстояния, а также, чтобы стоимость установки такой системы окупалась в течение 2 - 2,5 лет.
В июле 1972 года RCA начала запланированное тестирование своего кода в одном из бакалейных магазинов Kroger в Цинциннати. Штрих-коды печатались на маленьких бумажных наклейках и клеились к товару вручную, сотрудниками магазина, когда те вывешивали ценники.
При тестировании круглого кода была выявлена серьезная проблема - чернила смазывались и "мишенеобразный" штрих-код для сканера становился совершенно нечитаемым.
Но тут и руководство IBM вспомнило, кто был изобретателем изначального штрих-кода и тут же наладило дальнейшие разработки прямого штрих-кода, которые возглавил Вудленд. Дальнейшие разработки показали, что именно этот код идеально подходить для печати на упаковке и дальнейшего его считывания.
Компания NCR установила тестовую систему в Marsh's Supermarket в Огайо, прямо рядом с фабрикой, на которой производилось оборудование.26 июня 1974 года, Клайд Доусон вынул из своей корзинки упаковку жвачки Wrigley's Juicy Fruit и отдал ее продавцу Шарону Бучанану (Sharon Buchanan) который ровно в 8: 01 утра сосканировал с этой упаковки ее уникальный штрих-код.
Рис. 1.2.3 Жевательные резинки на которых был впервые напечатан штрих-код.
Штриховое кодирование товара - нанесение на товар специальных штриховых меток, образующих штриховой код, по которому можно установить вид товара, страну и предприятие-изготовитель, его принадлежность к определенной товарной группе, качественные характеристики. Штриховое кодирование позволяет отказаться от множества документов, отражающие различные характеристики товара, а также и от учётное документации [2].
Штрих (полоса) - темная зона изображения на однотонном светлом фоне, ограниченная прямыми параллельными линиями или концентрическими окружностями. Элементы штрихового кодирования наносятся на поверхность носителя, имеющего определенные светотехнические характеристики. При этом штрихи, наносимые с помощью красителей или каких-либо других средств, хорошо поглощают свет на определенных длинах волн, а фоновая поверхность хорошо его отражает, что используется при оптическом считывании [2].
Пробел - пространство между штрихами. В большинстве кодов в ширине пробела заключена определенная информация, лишь в некоторых кодах пробел - вспомогательная часть изображения и выполняет функцию элемента-разделителя. Высота и ширина штриха (пробела) - размеры изображения, выраженные в единицах измерения (миллиметрах, долях дюйма) или в безразмерных единицах (модулях) [2].
Ширина самого узкого элемента (штриха или пробела) принимается в качестве основного размера - модуля. Ширина любого элемента должна быть либо кратна модулю (например, в символике "Код 128" допустимы элементы шириной 1, 2, 3 или 4 модуля), либо должно выдерживаться постоянное отношение между широкими и узкими элементами (например, в символике "Код 39" элементы двух размеров - с заданным отношением ширины широких элементов к узким).
Использование штрих-кодов обусловлено следующими факторами: штрих-коды позволяют средним и крупным магазинам сократить время обслуживания покупателей; правильно нанесенные и читаемые штрих-коды позволяют посетителям быстро оплачивать приобретенные товары; моментальный доступ к инвентаризационной информации в режиме реального времени позволяет значительно ускорить все торговые процессы; штриховые коды позволяют на основе проведения "скользящих инвентаризаций" сразу же оформлять заказ на определенные товары; используя штрих-коды, Вы можете ответить не только на вопрос, что купил посетитель, а также когда он это купил и в какой комбинации. Штрих-коды позволяют полностью автоматизировать все процессы: от приемки товара до кассовых аппаратов; кассир, порой, даже не видит товар. Он проводит над ним сканером и вся информация из базы данных появляется на мониторе кассового аппарата, а также в распечатанном чеке. Полностью исключена вероятность обмана покупателя, так как суммы берутся компьютером из базы данных; возможность постоянного учета товара и проведения учетной политики. Исследования, проводимые некоторыми магазинами, позволяют проанализировать, в какие часы и какие дни недели лучше уходит тот или иной товар, и соответственно организовать подачу товара со склада в торговый зал. Таким образом, можно сказать что возникновение штрихового кодирования было неизбежно, так как торговая сфера уже в 20 веке начинала испытывать неудобство при учёте больших объёмов товаров, а использование штрих-кодов максимально автоматизирует торговые процессы.
1.3 Сферы применения штрих-кодов
Штрих-код обычно используется для быстрого и надежного ввода данных, улучшая производительность. Ниже представлен список наиболее распространенных областей, в которых используются штрих-коды:
· Пункты продаж (Point of Sale - POS) - одна из самых распространенных сфер, в которой применяются штрих-коды для учета проданных товаров.
· Инвентаризация - штрих-коды активно используются на складах для учета товара. Портативные сканеры используются для контроля за отгрузкой и получением товара. Данные собранные сканером могут периодически или в режиме реального времени выгружаться в компьютер в зависимости от системы, которую Вы используете, позволяя компаниям уменьшать уровни запасов и тем самым снижая стоимость транспортных расходов.
· Доставка - штрих-коды используются во всем мире транспортной промышленностью для маркировки начиная от писем и заканчивая большими грузами. Штрих-кодом кодируется отправитель, получатель, курьер и другая информация.
· Идентификация - удостоверения личности работника с напечатанным штрих-кодом используются различными компаниями во всем мире.
· Системы регистрации времени - штрих-коды используются для регистрации прихода и ухода с работы работников, что позволяет избавиться от бумажных расписаний и таймеров и автоматически рассчитывать зарплату.
· Упаковка - штрих-коды используются для идентификации номера партии, серийного номера и информации о доставке. Маркировка может быть использована для автоматической сортировки при отправлении, автоматизации получения и увеличить контроль над транспортировкой товара.
· Сбор данных - медицинские бланки требуют долгого и терпеливого их заполнения. При использовании штрих-кодов, информация может быть быстро и легко внесена в компьютерную базу данных. Уменьшая затраты на сбор данных, Вы увеличиваете качество обслуживания.
Из всего вышеперечисленного можно сделать вывод, что штриховое кодирование применяется не только в торговой сфере, но и в различных сферах жизни человека.
1.4 Способы кодирования
На сегодняшний день существует 2 способа кодирования информации о товаре - линейный и двумерный.
Линейный способ
Линейными называются штрих-коды, читаемые в одном направлении (по горизонтали). В подобном коде символ представлен последовательностью знаков, выстроенных в одну линию. Линейные символики позволяют кодировать небольшой объём информации (до 20-30 символов, обычно цифр). Количество информации в линейном штрих коде никак не влияет на высоту штрих кода (и наоборот). При одной и той же ширине линейного штрих кода, его высота может быть разной. Однако, чем выше штрих код, тем больше вероятность считывания его с первого раза.
Линейные штрих коды бывают разных типов:
EAN-13 EAN-8 UPC GS1-128
Codabar Code-39 и др.
Штриховой код EAN
Наибольшее распространение в международной практике получил код EAN - European Article Numbering.
В зависимости от области применения выделяют 3 группы товарных кодов EAN:
1.) международные, используемые как внутри, так и за пределами страны;
2.) национальные, используемые в пределах одной страны, преимущественно для розничной торговли разновесными товарами;
3.) локальные коды, используемые только в системах управления конкретного предприятия.
Штриховой код EAN является общим для всех стран "языком", с помощью которого можно однозначно идентифицировать товар на любом этапе его движения от производителя до покупателя. Код EAN отвечает следующим требованиям:
имеет международную значимость;
не зависит от требований отдельных пользователей;
идентифицирует любую товарную единицу на мировом уровне с помощью однозначного кода;
удобен по структуре для считывания ЭВМ;
пригоден для сбора и обмена информацией о товарах, как в пределах страны, так и в международной торговле; удобен для потребителей при расчете за приобретенные товары.
Все версии кода EAN имеют следующие общие характеристики:
символы имеют общую прямоугольную форму, образованную последовательностью темных параллельных штрихов и светлых промежутков между ними, перпендикулярных воображаемой линии основания или опорной прямой и имеют светлое поле со всех сторон;
светлые промежутки и темные штрихи состоят из светлых и темных модулей одинаковой длины (далее в тексте при описании символов EAN темный модуль будет представлен как "1", а светлый как "0");
знаки в штриховом коде, представляющие числовые разряды образуются семью модулями светлыми или темными. В этих знаках модули сгруппированы в штрихи и каждый разряд представлен 2 темными штрихами и 2 светлыми промежутками;
темный штрих или светлый промежуток могут содержать от 1 до 4 модулей;
помимо знаков, отображающих цифры, имеются вспомогательные знаки, содержащие меньшее количество модулей, и используемые как краевые и центральный знаки для обозначения начала, конца и разделения;
символ структурирован таким образом, чтобы он мог считываться стационарным сканирующим устройством многонаправлено либо ручным считывающим устройством в обоих направлениях;
размер символа может меняться в определенных пределах увеличения с учетом различных процессов печати;
габариты определяются только для одного конкретного символа, известного как "номинальный размер". Пределы увеличения составляют от 0.8 до 2.0 номинального размера.
а) Штриховой код ЕАN-13.
На рис.4 показан общий вид и геометрические "идеальные" размеры штрихового тринадцати разрядного кода EAN-13.
Рис. 4. Общий вид и номинальные размеры 13-разрядного символа EAN
Номер товара EAN/UCC-13 имеет следующую структуру:
· 3 цифры - это код (префикс) Национальной организации-члена EAN International;
· 6 цифр - это регистрационный номер предприятия, присвоенный Национальной организацией;
· 3 цифры - это порядковый номер продукции внутри предприятия;
· последняя 13-я цифра - контрольное число. Оно вычисляется из предыдущих двенадцати.
б) Штриховой код ЕАN-8
На рис. 5 показан общий вид и геометрические "идеальные" размеры штрихового восьмиразрядного кода EAN-8. Он используется в исключительных случаях, когда, например, размер упаковки товара не позволяет разместить символ EAN-13.
Рис 5. Общий вид и номинальные размеры 8-разрядного символа EAN
ЕАN-8 состоит из 8 цифр и пробелов:
Первые 1-2 - флаг страны
3-5 - Сокращения номера предприятия
6-7 - номер товара в пределах ассортимента
8 - контрольное число.
В таблице 1 [Приложение А] представлены префиксы товарных нумераций разных стран
Штриховой код UPC
а) Штриховой код UPC - 12 (А)
UPC-A - 12-значный штрих-код фиксированной длины для кодирования числовых данных. Используется в американских розничных магазинах для идентификации товаров. Уникальные штриховые коды UPC-A разработаны UC-советом. Если Вы собираетесь продавать свои товары в американских розничных магазинах, то скорее всего вам придется позаботиться о наличии штрих-кода UPC-A на вашей продукции.
Рис. 6. Штрих - код UPC
б) Штриховой код UPC-6 (Е)
UPC-E - 6-значный штрих-код фиксированной длины для кодирования числовых данных. UPC-E - сокращенный вариант штрих-кода UPC-A. Данный стандарт используется для идентификации мелких розничных товаров, размеры которых не позволяют разместить на них полный штрих-код UPC-A.
Рис. 7. UPC-E
Двумерный способ
QR-код (англ. quick response - быстрый отклик) - матричный код (двухмерный штрихкод), разработанный и представленный японской компанией "Denso-Wave" в 1994 году.
Основное достоинство QR-кода - легкое распознавание сканирующим оборудованием (в том числе и фотокамерой мобильного телефона), что дает возможность использования в торговле, производстве, логистике. QR-коды больше всего распространены в Японии, стране, где штрих-коды пользовались такой большой популярностью, что объём информации, зашифрованной в коде, вскоре перестал устраивать индустрию. Японцы начали экспериментировать с новыми способами кодирования небольших объёмов информации в графической картинке. Уже в начале 2000 года QR-коды получили широкое распространение в Японии, их можно было встретить на большом количестве плакатов, упаковок и товаров.
Максимальное количество символов, которые помещаются в один QR-код:
цифры - 7089;
цифры и буквы (включая кириллицу) - 4296;
двоичный код - 2953 байт;
иероглифы - 1817.
В настоящее время QR-код широко распространен в странах Азии (особенно в Японии), постепенно развивается в Европе и Северной Америке. Наибольшее признание он получил среди пользователей мобильной связи - установив программу-распознаватель, абонент может моментально заносить в свой телефон текстовую информацию, добавлять контакты в адресную книгу, переходить по web-ссылкам, отправлять SMS-сообщения и т.д.
В Японии подобные коды наносятся практически на все товары, продающиеся в магазинах, их размещают в рекламных буклетах и справочниках. С помощью QR-кода даже организовывают различные конкурсы и ролевые игры.
Ведущие японские операторы мобильной связи совместно выпускают под своим брендом мобильные телефоны со встроенной поддержкой распознавания QR-кода.
В Японии также QR-коды используются на кладбищах и содержат информацию об усопшем.
QR-коды активно используются музеями, а также и в туризме. Например, во Львове (Украина), объединение бизнесменов "Туристическое движение Львова" разместило QR-коды более чем на 80 туристических объектах. Это позволяет индивидуальному туристу легко ориентироваться в городе, даже не зная украинского языка, так как QR-коды установлены на нескольких языках.
История появления и развития популярных двумерных штриховых кодов
В течение многих лет штриховые коды продвигали в качестве машиночитаемых регистрационных знаков. Каждый знак содержал уникальный серийный номер, закодированный с использованием черных и белых штрихов, который являлся ключом к базе данных, содержащей подробную информацию. Такой подход предлагали эксперты. Однако многие потребители хотели, чтобы кодировалось большее количество информации. Они хотели, чтобы штриховые коды являлись своего рода портативной базой данных, а не просто ключом к ней.
Тенденция к созданию портативных баз данных впервые появилась в 1984 г., когда Automotive Industry Action Group (AIAG) опубликовала стандарт приложения в отношении идентификационных меток для автозапчастей при транспортировке, которые состояли из четырех "сложенных" (стековых) штрих-кодов Code 39. Эти сложенные штриховые коды содержали номер запчасти, количество, имя поставщика и серийный номер.
Первый по-настоящему двумерный штрих код был представлен в 1988 г. Intermec Corporation, когда они объявили о введении Code 49. После введения Code 49 были разработаны или модернизированы шесть других кодов, отвечавших потребности вместить портативную базу данных в максимально малое пространство.
В настоящее время для описания этого нового класса символов для доступа к информации используются несколько терминов. Двумерный код, или 2-D-код является общим для всего данного класса.
Термины "сложенная символика"или "многорядный код" применяются в отношении символики, состоящей из последовательностей одномерных кодов. Данные закодированы с использованием последовательностей штрихов и промежутков между ними различной ширины.
Термин "матричный код" применяется в отношении двумерных кодов, кодирующих информацию с помощью расположения темных участков в матрице. Каждый темный элемент имеет один и тот же размер, а информация кодируется расположением элемента.
Обычный штриховой код является "вертикально избыточным", что означает, что та же информация повторяется в вертикальном измерении. Верхняя часть штрихов может быть срезана безо всякой потери информации. Однако вертикальная избыточность позволяет считывать символы с полиграфическими дефектами, например, пятнами или пробелами. Чем выше штрихи, тем больше вероятность, что хотя бы одну полосу штрихового кода можно считать.
Двумерный код хранит информацию по всей высоте и длине символа. В действительности, все созданные людьми алфавиты представляют собой двумерный код. Так как оба измерения содержат информацию, по крайней мере, часть вертикальной избыточности становится ненужной. В этом случае необходимо использовать другие методы для предотвращения неправильного считывания, а также для обеспечения приемлемого коэффициента успешного считывания. Предотвращение неправильного считывания - относительно простая задача. Большинство двумерных кодов содержат контрольные слова для обеспечения точного считывания. Обеспечение приемлемого коэффициента считывания - это другая задача, и пока еще не проводилось исследований по его оценке.
Вначале двумерные символики разрабатывались для применения только в тех случаях, когда идентификационный символ необходимо было разместить на небольшом пространстве. Впервые эти символы были применены в медицинской промышленности на упаковках, содержащих лекарственные средства в дозах на один прием. Эти упаковки отличались маленькими размерами, и там совсем не было места для размещения штрихового кода. Представители электронной промышленности также с самого начала проявили интерес к высокоплотным двумерным символикам, так как в электронных схемах чрезвычайно мало свободного места.
Сравнительно недавно возможность кодировать портативные базы данных сделала двумерные символики популярными даже в тех областях, где наличие свободного пространства для размещения кода не главное. Один из примеров - хранение информации об имени, адресе и демографических данных при прямой почтовой рассылке.
AZTEC
В настоящее время наиболее распространён вид двухмерного штрихкода Aztec. В каждом символе можно выделить область мишени и область данных. Мишень представляет собой набор концентрических квадратов и служит для определения геометрического центра символа в процессе его декодирования. Символ состоит из двух и более смежных по вертикали строк-знаков символа штрихового кода. В двумерных кодах можно закодировать существенно больший объем информации.
Рис. 8. Области полной версии Aztec Code. Чёрным и красным обозначены элементы навигации, зелёным - область служебной информации, синим и голубым - слои хранения данных
Красным и чёрным цветом обозначены калибровочные элементы: мишень из концентрических квадратов в центре и пунктирные прямые для дополнительной навигации по шифру. Структура этих областей неизменна и положение остальных областей при считывании вычисляется относительно них. Количество пунктирных прямых может меняться в зависимости от размера используемого символа.
Зелёным цветом обозначены области для хранения служебной информации, всего 40 бит: по одному десятибитовому блоку на каждой из четырёх сторон.
Голубым и синим цветами обозначены слои хранения данных, радиально расходящиеся от центра. Тёмная точка в этой области кодирует логическую единицу, светлая - логический ноль, данные в каждом слое записываются по спирали по часовой стрелке, на иллюстрации тонкой линией слева сверху каждого слоя показано его начало.
Рис. 9. Ядро компактной версии Aztec code: центральная мишень, четыре маркера ориентации и пространство в 28 бит (по семь на каждой стороне) для описания параметров кодирования. Первое кольцо информации следует прямо за ядром.
Благодаря навигационным маркерам код не зависит от пространственной ориентации, и может быть считан не только при любом угле поворота, но и даже при зеркальном отражении рисунка.
Размер кода может варьироваться от квадрата 15x15 до квадрата 151x151. Наименьший может содержать в себе до 13 цифр или 12 букв английского алфавита, а наибольший - 3832 цифр или 3067 букв английского алфавита или 1914 байт данных. При этом не требуется пустого пространства вокруг рисунка кода.
Особенности:
· Наличие особой системы разметки, мишени, также называемой Bullseye, позволяет считывать информацию даже с искажённого изображения. Например, повёрнутого или растянутого.
· В коде применяется кодирование Рида-Соломона, позволяющее успешно считывать код при частичном повреждении его поверхности. Стандартный уровень избыточности при кодировании 23 %, при этом его можно изменять от 5 % до 95 %.
· Радиальное расположение слоёв информации позволяет увеличивать объём хранящейся информации, просто расширяя область кодирования.
· Радиальное расположение слоёв информации позволяет увеличивать объём хранящейся информации, просто расширяя область кодирования.
Другие виды двумерного кода
3-DI
Рис. 10
3-DI был разработан Lynn Ltd и является фирменным кодом. В 3-DI используются небольшие круговые символы. Он наиболее подходит для нанесения идентификационных меток на блестящую изогнутую металлическую поверхность, например, на хирургические инструменты.
ArrayTag
Рис. 11.
ArrayTag был разработан д-ром Уорреном Д. Литтлом (Dr. Warren D. Little) в Университете Виктории и является фирменным кодом. Символ состоит из простых шестиугольных символов с дополнительной границей, которые наносятся либо отдельно, либо группами в определенной последовательности. ArrayTags могут кодировать сотни опознавательный знаков и считываются на расстоянии до 50 метров. Они оптимальны для считывания на различном расстоянии и при различном освещении. Основная область применения этого кода - отслеживание лесо - и пиломатериалов.
Codablock
Рис. 12.
Codablock - это сложенная символика на основе ICS Identcode-Systeme. Он был разработан Генрихом Элманном (Heinrich Oehlmann) и изначально представлял собой пакет символов Code 39.
Каждый символ Codablock содержит от 1 до 22 рядов. Число знаков в ряду является функцией x-размера символа. Иными словами, каждый ряд может содержать разное количество символов. Каждый символ имеет начальные и конечные штрихи по всей высоте символа. Каждый ряд имеет двузначный указатель ряда, а последний ряд символа может иметь дополнительный контрольную цифру. Программа печати символа должна рассчитывать не только число необходимых рядов, как в других сложенных символиках, но также определять число знаков в ряду и плотность печати, необходимые для наилучшего размещения информации в символе Codablock.
Данный код представляет собой непрерывный тип штрих-кода переменной длины, который может кодировать набор знаков Code 39 (10 цифр, 26 букв, пробел и 6 символов). Его плотность не больше плотности символа Code 39 при определенной плотности печати. Например, максимальная плотность печати - 56 буквенно-цифровых знаков на 1 квадратный дюйм для символа, имеющего 7,5 mils (1 мил - 1 тысячная дюйма) и соотношение штриха 2/1.
В настоящее время используется версия Codablock F, которая в целом представляет собой набор нескольких уровней символов Code 128. Символ Codablock F состоит из 2 - 44 рядов, в каждом из которых не больше 62 символов. Каждый ряд считывается стандартным считывающим устройством для Сode 128 и содержит дополнительную информацию в отношении нумерации рядов и размера символов для того, чтобы собрать декодированные выходные сигналы с каждого ряда для воспроизведения полного сообщения в правильной последовательности.
Преимуществом этого кода является то, что его можно считывать сканером с движущимся лазерным лучом без особых отклонений искажений. Codablock был принят немецкими станциями заготовки донорской крови для идентификации крови.
Code 1 (Code One)
Рис. 13
Code 1 был изобретен Тедом Уильямсом (Ted Williams) в 1992 и является самой первой безлицензионной матричной символикой. В этом коде используется шаблон поиска, состоящий из горизонтальных и вертикальных штрихов, пересекающих среднюю часть символа. Символ может кодировать информацию ASCII, информацию по устранению ошибок, управляющие символы и закодированные двоичные данные. Принято 8 размеров - от кода 1A до кода 1H. Код 1A может содержать 13 буквенно-цифровых знаков или 22 цифры, а код 1H - 2218 буквенно-цифровых знаков или 3550 цифр. Самый большой символ имеет 134x в ширину и 148x в высоту. Сам код может иметь разнообразную форму, например, L, U, или T-образную форму. Code 1 в настоящее время используется в медицинской промышленности для маркировки этикеток медицинских товаров, а также в перерабатывающей промышленности для кодирования содержимого контейнеров для сортировки.
Code 16K
Рис. 14.
Code 16K был разработан Тедом Уильямсом (Ted Williams) в 1989 как многорядная символика, отличающаяся простотой печати и декодирования. Уильямс разработал также Code 128, а структура 16K основана на Code 128. Название кода не случайное - 128 в квадрате равняется 16 000, или кратко 16K. С помощью Code 16K удалось решить проблему Code 49, структура которого требует большого объема памяти для кодирования и декодирования таблиц и алгоритмов. 16K является сложенной символикой.
Каждый символ Code 16K содержит от 2 до 16 рядов, в каждом ряду 5 знаков ASCII. Кроме того, до 107 16-рядных символов могут быть объединены в цепочку друг с другом, что позволяет кодировать до 8,025 знаков ASCII или 16 050 цифровых знаков. В расширенном режиме первые три знака в каждом 16-рядном символе определяют знаковый режим, порядок шестнадцатирядных символов в блоке и общее число символов в блоке. Данный код представляет собой непрерывный тип штрих-кода переменной длины, который может кодировать полный комплект из 128 знаков ASCII. Минимальное x-размер - 7,5 mils для каждого символа, который может считываться считывающим устройством. Минимальная высота штриха - в 8 раз больше х-размера. Максимальная плотность записи данных - 208 буквенно-цифровых знаков на 1 квадратный дюйм, или 417 цифровых знаков на 1 квадратный дюйм в том случае, когда символ печатается с х-размером 7.5 mils. В медицинской промышленности, например, символ Code 16K, напечатанный с х-размером 7.5 mils, включающий флаг, десятиразрядную цифру NCD, пятиразрядную цифра, обозначающую срок годности, и 10 буквенно-цифровых знаков кода серии, может быть размещен на символе размером лишь 0,35 дюйма на 0,61 дюйма.
Символы Code 16K могут считываться модифицированным лазером с движущимся лучом или сканерами CCD. Ряды можно сканировать в любом порядке. После того, как считан последний ряд, устройство, считывающее штрих-код, выстраивает информацию в правильной последовательности. Этикетки могут печататься с помощью стандартных технологий печати.
Code 49
Рис. 15
Code 49 был разработан Дэвидом Элаисом (Favid Allais) в 1987 в Intermec Corporation с целью решения задачи размещения большого количества информации в символе очень малых размеров. Code 49 решает эту задачу с помощью использования последовательностей символов штрих-кода, расположенных в несколько уровней друг над другом. Каждый символ может иметь от двух до восьми рядов. Каждый ряд состоит из начальной зоны молчания, стартовой комбинации, четырех информационных слов, кодирующих восемь знаков, где последний знак - знак проверки строк; стоповую комбинацию и завершающую зону молчания. Каждый ряд кодирует информацию с помощью 18 штрихов и 17 пробелов и разделяется высоким модульным разделительным штрихом (разделителем рядов).
Данный код представляет собой непрерывную символику переменной длины, которая может кодировать полный набор из 128 символов ASCII. В действительности его структура является неким гибридом UPC и Code 39. Intermec сделал этот код общедоступным (безлицензионным).
При минимальном х-размере 7.5 milsм каждый символ может считываться любым считывающим устройством. Если х-размер составляет 7,5 mils, а минимальная высота восьмирядного символа - 0, 5475 дюймов, то максимальная предполагаемая плотность составит 170 буквенно-цифровых знаков на один квадратный дюйм. В медицинской промышленности размер символа, включающего флаг, десятизначную цифру NDC, пятизначную цифру срока годности и десятизначный буквенно-цифровой код партии, составит 0,3 дюйма на 0,53 дюйма. Размер пятнадцатизначного символа Code 49, обозначающего серийный номер печатной платы, составит всего 0,1 дюйм на 0,3 дюйма.
Сканирование Code 49 может производиться с помощью модифицированных сканеров с движущимся лазерным лучом или сканера CCD. Intermec производит сканеры CCD, которые могут декодировать символы Code 49 наряду со стандартными штрих-кодовыми символиками. Этикетки могут печататься с использованием стандартных технологий печати.
ColorCode
Рис. 16
Разработанный учеными Университета Yonsei (Корея), ColorCode™ представляет собой фирменную двумерную штрих-кодовую систему, предназначенную для хранения URL, которая может считываться камерой мобильного телефона. С его помощью камера определяет индексированные коды, которые в свою очередь связаны с соответствующей информацией. Матрица, состоящая из отдельных блоков и аналоговых данных, касающихся числа цветов, оцифровывается, а затем обрабатывается выделенным сервером с использованием зарегистрированных адресов этих кодов.
CPCode
Рис. 17
CP Code - фирменный код, разработанный CP Tron, Inc. Он состоит из квадратных матричных символов с L-образной периферийной мишенью и прилегающих установочных меток. Визуально этот код напоминает Data Matrix Code.
DataMatrix
Рис. 18
Data Matrix, разработанный Siemens, представляет собой двумерный код, предназначенный для размещения большого количества информации на очень ограниченном пространстве. Символ Data Matrix может хранить от 1 до 500 знаков. Размер символа может варьироваться от 1 квадратного mil ила до 14 квадратных дюймов. Это означает, что символ Data Matrix может иметь плотность до 500 миллионов знаков на 1 квадратный дюйм! В действительности, плотность, конечно же, зависит от разрешения при печати и используемой технологии считывания.
Данный код обладает рядом других интересных особенностей. Так как информация кодируется абсолютным, а не относительным положением точки, она не подвержена влиянию дефектов печати, подобно обычным штриховым кодам. Схема кодирования имеет высокий уровень избыточности информации, "рассредоточенной" на поверхности символа. По данным компании, это позволяет правильно считывать символ, даже если часть его отсутствует. Каждый символ Datacode имеет две прилежащие стороны в виде сплошных штрихов, а остальные символы печатаются в виде комбинаций квадратных точек, расположенных на одинаковом расстоянии друг от друга. Такие изображения используются для обозначения как ориентации, так и плотности печати символа.
Существуют две основные подгруппы символов Datamatrix. Те, которые используют сверточное кодирование для исправления ошибок и применялись для установки большей части систем Datamatrix, имеют обозначения от ECC-000 до ECC-140. Вторая подгруппа обозначается ECC-200 и использует технологии исправления ошибок по методу Рида-Соломона. Все символы подгруппы ECC-000 - 140 имеют нечетное число модулей вдоль каждой стороны квадрата. Символы ECC-200 имеют четное число модулей на каждой стороне. Максимальная информационная емкость символа ECC-200 составляет 3116 цифровых знаков, или 2335 буквенно-цифровых знаков на 1 символ, представляющий собой квадрат из 144 модулей.
Наиболее популярные области применения Datamatrix - это маркировка предметов малых размеров, например интегральных микросхем и печатных плат. В этих случаях используется способность этого кода кодировать приблизительно пятьдесят единиц информации на поверхности символа размерами 2 или 3 квадратных мм, а также тот факт, что он может считываться при контрастности всего лишь 20 процентов.
Этот код может считываться с помощью видеокамеры CCD или сканера CCD. Символы размерами от одной восьмой квадратного дюйма до семи квадратных дюймов могут считываться на расстоянии до 36 дюймов. Обычная скорость считывания - 5 символов в секунду.
Datastrip Code
Рис. 19
Datastrip Code вначале назывался Softstrip и был разработан Softstrip Systems. Эта самая ранняя из двух двумерных символик. Данный оригинальный код в настоящее время принадлежит Datastrip Inc. Это запатентованная система кодирования и сканирования, позволяющая печатать информацию, изображения и даже оцифрованный звук на простой бумаге и очень сжатом формате и безошибочно считывать их при помощи компьютера.
Основные компоненты Datastrip - напечатанные графические изображения (the Datastrip) и оптико-электронные считывающие устройства. Код Datastrip представляет собой матричное изображение, состоящее из очень маленьких прямоугольных черных и белых областей (DiBits). Маркеры с одной стороны и по верхней полосе (указатель начала строки, шахматный шаблон и рамка) содержат установочную информацию для устройств, предназначенных для считывания Datastrip Code, и обеспечивают неискаженность данных. Информация в заголовке содержит подробности о данных, хранящихся в полосе: название файла, число байтов, плотность слоя данных и т.д. Метод кодирования Datastrip, включающий биты контроля четности в каждую кодируемую строку, обеспечивает очень высокую надежность и возможность коррекции ошибок.
Полосы информации обычно имеют 5/8 дюймов в ширину и 9 дюймов в длину. Плотность данных варьируется от 150 до 1 000 байтов на 1 квадратный дюйм в зависимости от технологии печати, используемой при их производстве. Datastrip Code может успешно производится с помощью большинства матричных лазерных принтеров (включая высокоскоростные лазерные принтеры), а также струйных или термографических печатных устройствам. Datastrip Code может воспроизводиться на большей части видов бумаги (включая газетную бумагу) и пластмассе, с использованием обычных технологий печати - от офисных фотокопировальных устройств (для полос с меньшей плотностью) до скоростных ролевых печатных машин. Полосу с низкой плотностью (до 1 100 байта на 1 9-дюймовую полосу) могут изготавливаться на матричных принтерах. Полосы, содержащие до 3 500 байтов, могут изготавливаться с помощью лазерных принтеров. Полосы с очень высокой плотностью (до 4 800 байтов) требуют более сложных технологий изготовления с использованием фотографических технологий.
Datastrip Code может считываться специальными считывающими устройствами, производящимися Datastrip, Inc., при этом считывающее устройство должно находится в контакте с кодом. Вначале данный код продвигали как технологию, позволяющую считывать программное обеспечение, напечатанное в книгах и журналах. В настоящее время этот код в основном используется для печатания информации на различных удостоверениях.
Dot Code A
Рис. 20
Dot Code A (также известный как Philips Dot Code) является одним из немногочисленных точечных кодов.
Эта символика разрабатывалась для идентификации объектов на относительно малой площади, или же для прямой маркировки с помощью технологий маркировки, отличающихся низкой точностью.
Символ состоит из определенной последовательности точек - от 6 x 6 до 12 x 12, последняя из которых позволяет определять более 42 миллиардов отдельных предметов. Области применения - идентификация лабораторной стеклянной посуды и маркировка белья в прачечной.
HCCB
Рис. 21
Штриховой код High Capacity Color Barcode (HCCB) использует преимущества инновационных устройств обработки изображений, а также другие технологии обработки данных с целью обеспечения хранения информации в очень сжатом виде в аналоговых печатных материалах.
Это достигается с использованием штрихкодовых символов различной формы в сочетании с использованием различных цветов для каждого символа. Код защищен авторскими правами.
MaxiCode
Рис. 22
Maxicode (первоначально именовавшийся UPSCode и иногда Code 6) представляет собой матричный код, разработанный United Parcel Service в 1992. Тем не менее, это не последовательность квадратных точек - MaxiCode состоит из комбинации из 866 переплетающихся шестиугольников, размером 1 дюйм на 1 дюйм.
В результате плотность этого кода по крайней мере на 15 процентов выше, чем плотность обычного кода, использующего точки квадратной формы, однако, для печати таких символов требуются принтеры с более высокой разрешающей способностью, например, термографические или лазерные принтеры.
В центре символа находиться мишень "кошачий глаз", позволяющий сканеру отличать этикетку независимо от ее положения.
В символе размером 1 дюйм может располагаться около 100 знаков ASCII. Символ может быть прочитан, даже если до 25 процентов его были повреждены, Он также может считываться с помощью камеры или сканера CCD.
PDF 417
Рис. 23
PDF417 представляет собой многоуровневую символику и был разработан Инджиуном Вангом в 1991 в Symbol Technologies, которая теперь принадлежит Motorola. PDF означает Portable Data File (портативный информационный файл) и символика состоит из 17 модулей, содержащих 4 штриха и промежутки между ними (отсюда число "417"). Код открыт для общего пользования.
Структура кода позволяет размещать от 1000 до 2000 знаков в одном символе с плотность информации от 100 до 340 знаков. Каждый символ имеет стартовую и стоповую группу штрихов протяженностью по всей высоте символа.
Символ PDF417 может считываться с помощью модифицированного ручного лазерного устройства или сканеров CCD. Для печати этой символики следует использовать принтеры с высокой плотностью печати (термографические или лазерные).
Snowflake Code
Рис. 24
Snowflake Code - оригинальный код, разработанный Electronic Automation Ltd. в 1981. Он представляет собой определенную комбинацию точек квадратной формы, напоминающую "Dot Code" компании Philips. Он позволяет кодировать более 100 цифровых знаков на площади всего 5мм x 5мм. Программа коррекции ошибок, программируемая самим пользователем, позволяет считывать символы даже в случае повреждения 40% кода.
Код используется в фармацевтической промышленности. Его преимущество заключается в том, что его можно наносить на продукцию многими способами, включая печатные наклейки, чернильную печать, лазерную маркировку, насечку или пробивку отверстий.
SuperCode
Рис. 25
SuperCode был разработан Инджиуном Вангом (Ynjiun Wang) в 1994 г. и открыт для общего пользования. Эта символика использует пакетную структуру, то есть является разновидностью многорядной символики. Существуют точные правила горизонтального расположения знаков в пакете, однако допускается большая свобода в вертикальном и горизонтальном расположении пакетов по сравнению с расположением матриц, состоящих из колонок и рядов в многорядной символике. Пакетная структура SuperCode позволяет размещать каждый знак, кодирующий ключевое слово для исправления ошибок, рядом с знаком символа, кодирующим адрес пакета. Таким образом, последовательность ключевых слов известна несмотря на расположение пакета. Это не только позволяет использовать непрямоугольные формы символов, но и делает возможным размещение пакетов таким образом, чтобы они не располагались впритык друг к другу.
Подобные документы
История штрих-кода. Разновидности, способы кодирования информации. Технология применения штрихового кода ЕАN-13, структура номера товара. Штриховой код на транспортной упаковке. Маркировка грузовых пакетов машиночитаемым кодом. Виды считывающих устройств.
курсовая работа [1,4 M], добавлен 18.02.2015Цели, методы, правила нанесения и виды кодирования товаров. Основные требования использования штрихового кодирования. Маркировка групповых транспортных упаковок. Понятие, классификация, символика и преимущества штрих кодов. Товарные штриховые коды.
курсовая работа [1,1 M], добавлен 05.05.2015Цель и методы кодирования. Особенности построения кодов в разных системах классификации, их структура. Современные формы и системы кодирования товаров. Эскизы пробирных клейм для драгоценных металлов. Таблица соответствия штрих-кодов стран в системе EAN.
курсовая работа [3,1 M], добавлен 07.12.2011Сущность штрихового кодирования. Преимущества внедрения технологий адресного хранения на товарных складах. Проблема идентификации элементов материальных потоков и ее решение в логистике. Описание технологии автоматизированной идентификации штрих-кодов.
курсовая работа [476,0 K], добавлен 26.07.2014Глобализация экономики, расширение сферы применения кодов и структуры кодирования. Постепенный переход к универсальному, 14-разрядному коду. Разработка и активное использование специализированных видов маркировки. Идентификация продукции покупателем.
курсовая работа [343,2 K], добавлен 31.03.2009Универсальная система штрих-кода по международному евростандарту ЕАN и методы его расшифровки. Способы определения подлинности товара по тринадцатиразрядному штрих-коду. Классификация способов кодирования информации: линейные и двухмерные символики.
статья [90,4 K], добавлен 15.05.2012Виды систем кодирования, их характеристика. Анализ различных кодов и символов на примере продовольственных товаров. Оценка эффективности применения штрихового кодирования в России. Проблемы использования системы кодировки товаров в магазине "АТАК".
курсовая работа [6,7 M], добавлен 05.12.2014Повышение эффективности складских операций. Продвижение товаров с точки зрения логистики. Виды складов и их классификация. Организация размещения и хранения продукции. Складской учет на базе штрих-кодирования. Функциональные возможности "1С-склад".
дипломная работа [2,4 M], добавлен 09.08.2015Сущность и значение применения информационно-компьютерных технологий. Виды систем слежения и диспетчеризации. Применение в логистике сети Интернет. Виды штриховых кодов. Штриховой код EAN, нанесение и считывание штрих-кода с помощью различных устройств.
курсовая работа [2,9 M], добавлен 06.10.2013Отличие торговых систем от бухгалтерских, правила применения штрих-кодов. Основные подходы к автоматизации торговли. Организация складского хозяйства предприятия. Сравнительная характеристика некоторых программ для торговли и склада. Мобильная торговля.
контрольная работа [2,3 M], добавлен 26.09.2010