Рассмотрен процесс проектирования устройства, предотвращающего столкновение слепых и слабовидящих людей с препятствиями, возникающими по ходу их движения.
Ключевые слова : ультразвуковой дальномер, схема устройства, микроконтроллер, алгоритм, программа.
Люди с нарушением зрения как никто другой нуждаются в приспособлениях для ориентации в пространстве. Практически в любом современном телефоне или персональном компьютере имеются функции отображения информации с высоким контрастом, повсеместно внедряется шрифт брайля для маркировки продуктов питания, фармацевтических препаратов и прочих целей. По всему миру множество компаний создает технические приспособления, призванные решить эту проблему, используя все подходящие средства — от обычных наручных часов до специальных очков, позволяющих увидеть мир по-новому.
В настоящей статье рассматривается ультразвуковой дальномер, предназначенный для слепых и слабовидящих людей. Ультразвуковой дальномер работает путем направления испускаемого звука на какой-то предмет, который, в свою очередь, отражает его (Рис. 1). Дальномер улавливает звук и вычисляет время, за которое отраженный звук вернется обратно. Зная время, за которое ультразвук возвращается обратно в устройство, и скорость звука можно легко вычислить приблизительное расстояние до цели.
Рис.1. Строение ультразвукового дальномера
Вычисление расстояния
Сам датчик ничего не рассчитывает самостоятельно, а лишь выдает звуковой сигнал определенной длительности. Все расчёты необходимо производить в микроконтроллере. Расчёт расстояния происходит на основании полученного времени и вычисляется по следующей формуле:
S = v*t;
υ — скорость звука;
t — время движения звука от датчика до объекта.
Нужно помнить, что звуку нужно время, чтобы добраться не только до самого объекта, но и вернуться назад. Таким образом, по формуле будет высчитано расстояние в две стороны, и чтобы этого избежать нужно время движения поделить на два. Немного изменим нашу формулу.
S = v*t\2;
Сам датчик считает время в микросекундах, что равно 0.000001 секунде, это тоже нужно обязательно учитывать в наших вычислениях.
S = v*t\2*0.000001;
Ответ получится в метрах, и для того чтобы перевести его в сантиметры умножим его на 100.
S = v*t\2*0.000001*100;
Скорость звука равна 340 метров в секунду, поэтому я могу заменить букву t на это число
S = v*340\2*0.000001*100;
Если подсчитать все получившиеся числа на калькуляторе, то формулу можно сократить для более понятного вида.
S = t*0.017;
Сам микроконтроллер плохо считает цифры, где есть много нулей после запятой, поэтому требуется улучшить формулу, а именно умножить на 0.017. Такую запись числа можно представить как деление числа 17 на 1000.
S = t*17\1000
или
S= t/(1000/17);
Итоговая формула для вычисления расстояния в ультразвуковом датчике выглядит следующим образом:
S= t\58.82
Алгоритм работы
Для получения данных о расстоянии до объекта необходимо запрограммировать следующий алгоритм действий:
- Подать на выход дальномера под именем «Trig» импульс длительностью 10 микросекунд;
- Когда ультразвуковые импульсы дойдут до препятствия, они отразятся от него и будут приняты приемником;
- Микроконтроллер, получив итоговые данные переводит их в понятные числовые обозначения, обозначающие время полученного импульса.
- При делении полученного времени на 58.82, получим данные в сантиметрах, необходимые для дальнейшего программирования.
В реальных условиях, из-за температуры воздуха, наш датчик может ошибаться от 1 до 5 см. Такая погрешность находится в пределах нормы. Помимо температуры воздуха, точность работы дальномера зависит от следующих факторов:
- Расстояния до искомого объекта;
- Наличия сторонних шумов;
- Угла падения звуковых волн относительно устройства;
- Качества исполнения компонентов модуля;
- Наличия перебоев в электрическом питании модуля;
В проекте было решено использовать дальномер US-015 из-за хорошего соотношения цены и качества (Рис. 2).
Рис. 2 — Ультразвуковой дальномер US-015
Ультразвуковые дальномеры подобного дизайна очень легки в эксплуатации – в случае выхода из строя можно приобрести новый датчик и легко заменить неработающий на новый.
Вибромоторчик
В ходе проектирования устройства было решено отказаться от использования динамика, потому что люди с нарушением зрения в большей мере пользуются слухом. В таком случае постоянный писк, оповещающий о возможной опасности будет не только нервировать, но дезориентировать владельца. Ненавязчивая вибрация не будет доставлять какой-либо дискомфорт.
Вибромоторчик – это неправильно сбалансированный электродвигатель. К валу двигателя крепится грузик не по центру, а несколько смещено, что при вращении двигателя заставляет его колебаться (Рис. 3). Изменяя вес нагрузки, скорость двигателя, расстояние от вала до грузика, можно изменить число и интенсивность колебаний до необходимого количества. Таким образом колебания передаются самому электродвигателю.
Рис.3. Смещенный центр тяжести у вибромоторчика
Для устройств подобного плана необходимо хорошо подобрать вибромотор, для того, чтобы вибрация была не слишком слабой и ее можно было почувствовать через плотную одежду. Однако, если вибрация будет слишком интенсивной, то устройство будет доставлять дискомфорт его обладателю. Для таких целей идеально подходит любой вибромотор от мобильного телефона (рисунок 4).
Рис. 4. Вибромоторчик
Схема устройства
Для того, чтобы совместить ультразвуковой дальномер и вибромоторчик между собой, потребуется плата из семейства «Arduino». Для того, чтобы не возникало сложностей в проектировании и тестировании устройства, первоначальный вариант собран на более простой плате «Arduino UNO», позволяющий обходиться без помощи паяльника. Впоследствии программа для микроконтроллера и все его компоненты будут перенесены на «Arduino Nano» версию микроконтроллера при помощи пайки.
Все компоненты работают от напряжения в 5 Вольт и подключаются к цифровым выводам микроконтроллера. Схема подключения ультразвукового дальномера и вибромотора к плате «Arduino UNO» (Рис. 5).
Рис. 5. Схема подключения компонентов к микроконтроллеру
В зависимости от показаний расстояния, которые ультразвуковой дальномер пересылает в плату, микроконтроллер дает команду вибромоторчику запуститься, тем самым оповещая о вероятном столкновении. Интенсивность вибрации меняется в зависимости от расстояния до предполагаемого препятствия. Чувствуя вибрацию на своем теле, человек понимает, что возможно столкновение и что следует быть немного аккуратнее и изменить траекторию движения.
В дальнейшем данный модуль можно уменьшить в размерах и вшить в одежду с разных сторон. При должной сноровке подобная одежда поможет слабовидящему человеку лучше ориентироваться в пространстве и избегать столкновения с людьми, идущими на встречу.
Алгоритм работы устройства выглядит следующим образом:
- Настройка портов и переменных;
- Сканирование пространства на наличие препятствий;
- Если обнаружена преграда включить вибрацию;
- Выключить вибрацию;
- Идти к пункту 2.
Блок схема отображена на рисунке 6.
Рис. 6. Блок схема
Так как ультразвуковой дальномер имеет не большой радиус покрытия (Рис. 7), то необходимо использовать сразу несколько подобных устройств, чтобы лучше ориентироваться в пространстве.
Рис. 7. Зона покрытия дальномера
Пайка.
Для того, чтобы уменьшить размеры моего приспособления я решил использовать Arduino меньших размеров, и напрямую припаять к нему все контакты (Рис. 8)
Рис. 8. Микроконтроллер Arduino Nano
Для того, чтобы припаять провода к плате потребуется несколько специальных приспособлений: паяльник, канифоль, оловянный припой, губка для паяльника. Пайка – это процесс соединения металлов, находящихся в твердом состоянии, посредством расплавленного присадочного металла, называемого припоем и имеющего температуру плавления, меньшую температуры плавления основного металла.
Исходя из этого определения, можно понять, что для того, чтобы припаять провода к микроконтроллеру необходимо расплавить оловянный припой, и совместить его с необходимыми мне компонентами. Когда припой остынет, провода крепко накрепко приплавятся к плате и их тяжело будет оторвать друг от друга. Но так как провода и сама плата не очень чистые, и там много всяких частиц грязи и жира нам обязательно потребуется флюс или канифоль. Смысл флюса при пайке такой же, как смысл мыла при мойке жирной посуды – разрушать поверхностную пленку. Если не применять флюс, то пайка получится некачественная — может не обеспечивать электрический контакт или со временем отвалиться.
Листинг программы
После того, как вся конструкция была правильно собрана и припаяна, нужно запрограммировать микроконтроллер. Так как я использую микроконтроллер «Ардуино», то и сама программа будет написана на специальной платформе, созданной для этих целей. Исходя из моей блок-схемы была написана программа, изображенная на рисунке 10.
Рис. 10. Листинг программы
В результате проектирования было создано устройство – ультразвуковой дальномер, которое предупреждает слепых и слабовидящих людей от угрозы столкновения. Детально описан процесс проектирования и показано, что все этапы данного процесса были тщательно изучены для принятия решения по техническим элементам и изделия в целом.
Литература:
- Джереми Блум. Изучаем Ардуино. Инструменты и методы технического волшебства. СПБ.: «БВХ-Петербург», — 2015 г.;
- СаймонМонк. Программируем ардуино. СПБ.: «Питер», — 2017 г.;
- Петин В. А., Биняковский А. А. Практическая энциклопедияArduino. М.: «ДМК Пресс», — 2017г.;
- П. Хоровиц, У. Хилл. Искусство схемотехники. М.: «Мир», — 2014 г.;
- Интернет ресурс робототехника18.рф [Электронный ресурс]:http://робототехника18.рф/частота-шим-ардуино.