Шрифтом Брайля можно не только выводить, но и вводить информацию. В классическом 6-битном варианте этого шрифта знак состоит из двух столбцов по три бита в каждом. В брайлевской клавиатуре оба столбца развёртнуты в одну строку, по три бита на каждую руку. Предлагаемая самодельная клавиатура этого типа озвучивает вводимые знаки и одновременно отправляет их в последовательный монитор, откуда текст можно затем скопировать в другое приложение для последующей правки.
Да простят меня все считаюшие это моветоном, но схему автор выполнил в чём-то Fritzing'оподобном. К тому же, он забыл добавить к 7805 конденсаторы, предотвращающие самовозбуждение — их надо поставить обязательно. Но способ изображения схемы никак не повлиял на работоспособность конструкции, прекрасно справляющейся со своими функциями.
Коды цифр в шрифте Брайля аналогичны кодам букв A — J, каждое число необходимо предварять специальным знаком «сейчас пойдут цифры»:
Но чтобы клавиатура озвучивала и передавала в последовательный монитор цифры вместо букв, её необходимо перевести в соответствующий режим выключателем, подключённым к одному из входов Arduino аналогично кнопкам. Как кнопки, так и выключатель снабжены подтягивающими резисторами (1 кОм).
Файлы для озвучивания знаков хранятся на карте памяти, отформатировать её необходимо обязательно в FAT32:
В Linux — так.
Затем поместить на неё файлы, скачанные отсюда. А в Arduino залить скетч, предварительно сменив расширение файла с TXT на INO.
Для приёма набираемых символов можно воспользоваться как последовательным монитором Arduino IDE, так и любым эмулятором терминала. Автор предпочитает CoolTerm за возможность сразу записывать вводимые знаки в текстовый файл, но так может не только эта программа. Параметры: 9600 Бод, 8 бит, без контроля чётности, один стоп-бит, DTR и RTS включены. Когда всё заработает, можно попробовать набрать какой-либо текст:
Краткая видеоинструкция и проверка клавиатуры:
Чтобы можно было сразу набирать на такой клавиатуре текст в любой программе, прошивку необходимо доработать, добавив функцию HID-устройства. Но этот режим поддерживают не все Arduino-совместимые платы.
Комментарии (24)
rPman
19.05.2019 08:09+1А какой существует максимально дешевый, портативный и простой способ создания монитора браиля, а точнее, из чего можно сделать собственно символы (пикселы)? магниты очевидно тяжелы и энергозатратны,… пьезоищлучатели?
holomen
19.05.2019 08:22Я бы, если это делал на коленке, чтобы со 100500 электромагнитами не заморачиваться, с механической разверткой: сами штырьки — цилиндрические магниты, а под ними ездит каретка с электромарнитами и в зависимости от положения переключает направление тока, тем самым втягивая или выталкивая эти штырьки.
eabrega
19.05.2019 10:34+1Я пытался реализовать клавиатуру на вот таких шаговых двигателях. Получалось довольно компактно, быстродействие отличное — все буквы поднимаются разом, а бонусом то, что после поворота всех головок монитор не потребляет энергии. Такой e-link своеобразный.
Прикидывал цену на серийное устройство. Получалось что монитор на 16 символов может стоить в районе 20000 — 40000 р. что сильно дешевле тех что продают сейчас. Например.MaM
19.05.2019 13:17+1С точки зрения цены конечно ужас еще тот клава за 900'000. Кстати, www.fabtolab.com/solenoid-electromagnet-micro-5v? Как вариант, ну или www.leeproducts.co.uk/press_release_archive_1.htm. Сомневаюсь в способе реализации который бы был наиболее дешев. Вроде если на соленойдах 12$ долларов на символ, корпус если на 3д принтере делать получиться думаю что то около 5к сборка плат питания/управления тоже что то около 2-3 тыр. Затраты на упаковку и логистику, чтоб в карман положить — ну думаю в принципе вполне реально уложиться в 20
eabrega
19.05.2019 14:01+1Сила нажатия пальцем при чтении довольно велика. С соленоидами возникает проблема фиксации. Или высокий ток удержания или сложная механика, от этого растут габариты символа — а он стандартный. Да потребляет соленоид как не в себя.
rPman
19.05.2019 21:54+1Вах ну и цена.
Кстати, про двигатели, не надо делать 1 двигатель на пиксел, их надо группировать и двигать маску, поднимающую нужную комбинацию при определенных позициях. Монитор — это узкая полоска символов в одну строчку, (например по 2 моторчика на символ, там 3 пиксела — 8 комбинаций). Положение определять по количествую оборотов (если считать не электроникой по потреблению, то простым оптическим датчиком), а так как в схеме и так понадобится хотя бы минимальный редуктор, достаточно риски на зубчатом колесике надырявить.
Нажатие на точки не будут их продавливать.
3D-принтером все это дело сформировать (ну ок, пластинки должны быть гладкими — фреза/лазер из тонкого оргстекла или толстой пленки)… хм, интересная цена получается даже при штучном производстве, на 16 символов 32 двигателя, 32-64 оптических датчика (концевики), управление по принципу бегущей строки (управляющая микросхем в один момент времени работает только с 1-2 двигателями и датчиками)… причем двигатели с редуктором прямо на плату паять.Zenitchik
19.05.2019 22:44+2Сейчас прикинул на пальцах: строка «00010111», если её закольцевать, содержит все восемь трёхсимвольных подстрок.
А строка «0000100110101111» — все 16 чётырёхсимвольных.
holomen
19.05.2019 22:53+1Подумалось. Да даже шаговый двигатель и выделенный датчик положения не нужны. Достаточно простого коллекторного движка. В позиции очередного символа на каретке сформировать выступ чтобы добавить сопротивления движению. Тогда получается двигаемся с небольшим током двигателя (таким, чтобы было недостаточно для преодоления выступа), как наехали на выступ — двигатель встал, ток вырос — отловили по току двигателя. Остановили каретку, выставили штырьки, подали тока больше чтобы проскочить выступ. Повторить до следующей позиции.
kinall
19.05.2019 11:17Это всё, конечно, интересно, но без сравнения с уже имеющимися решениями практически бесполезно. Думается мне, это далеко не первая клавиатура для шрифта Брайля (и даже не сто первая). Чем она лучше/хуже остальных? И, главное, проверяли ли её в реальных условиях, с отзывами от пользователей?
Tamul
19.05.2019 14:08+1Кажется, шрифт Брайля — это ещё и неплохой вариант ввода для всяких гугл-очков и прочих носимых устройств с экраном, но без клавиатуры. Четыре кнопки, ввод символа группами по три точки в два приёма, исполнение в виде браслета на ладонь. Такой штукой хоть при езде на велосипеде печатать можно, хоть стоя в метро, да и скорость должна получиться на уровне или чуть быстрее ввода азбукой Морзе.
Zenitchik
19.05.2019 16:48+1Что такого выдающегося в печати «стоя в метро»? Я в своё время СМСки набирал, не вынимая телефон из кармана. Порой даже на ходу.
norguhtar
19.05.2019 17:06+1Откройте для себя аккордные клавиатуры.
Tamul
19.05.2019 17:19+1Увы, у каждой своя «раскладка», а тут хоть какой-то общемировой стандарт. Да и о аккордовых клавиатурах рассуждают куда чаще, чем их выпускают, а по когда-либо производимым максимум информации — это видео на Ютубе «я набираю „Hello world“ на coollkeyboard за 40 секунд».
norguhtar
19.05.2019 17:25+1Это из-за кривой обучения. Правда есть различные стенотайпы. Там стандартизация есть.
Verdoga
Добрый день. С точки зрения сделать, положить на полку и забыть — нормально. А вот в реальности оно зачем? Я сейчас интересуюсь, как человек непосредственно работающий с брайлем.
И озвучивать зачем? Для этого же есть скринридеры, которые явно более гибко настраиваются для озвучивания, чем это изделие.