Оглавление:
- Шаг 1. Инструменты, детали и материалы
- Шаг 2: 3D-печать
- Шаг 3: печать и отжиг мундштука
- Шаг 4: постобработка 3D-отпечатков
- Шаг 5: проверка посадки
- Шаг 6: подготовьте джойстик
- Шаг 7: Схема
- Шаг 8: спаяйте все вместе
- Шаг 9. Загрузите программу и тест
- Шаг 10: горячий клей
- Шаг 11: настройка и использование
- Шаг 12: Готово
Видео: «Sup - мышь для людей с квадриплегией - низкая стоимость и открытый исходный код: 12 шагов (с изображениями)»
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:51
Весной 2017 года семья моего лучшего друга спросила меня, не хочу ли я прилететь в Денвер и помочь им с проектом. У них есть друг, Аллен, который страдает параличом нижних конечностей в результате аварии на горном велосипеде. Мы с Феликсом (моим другом) провели небольшое исследование и решили создать для Аллена «глоток-п-затяжку», совмещенный с джойстиком, чтобы дать ему возможность доступа ко всем тем же функциям, что и у обычной мыши.
Sip-n-puff - это устройство ввода, которое принимает вводимые пользователем данные в виде «глотка» или «затяжки» (представьте, что вы потягиваете через соломинку или пускаете пузыри в свой напиток). Здесь мы сочетаем его с джойстиком, чтобы пользователь мог перемещать курсор по экрану, а Sip-n-puff используется для таких функций, как щелчок и прокрутка.
В устройствах Sip-n-Puff нет ничего нового, и комбинации джойстик / sip-n-puff тоже не редкость - но покупка такого устройства обойдется вам примерно в 500-1500 долларов! Для Аллена, у которого нет источника дохода, это невозможная цена. Однако само устройство на самом деле очень простое - в этой статье я покажу вам, как построить его всего за 50 долларов!
Все проекты и код имеют открытый исходный код, а это значит, что вы можете создать его, не заплатив мне или Феликсу ни цента! Если вам нужно только готовое устройство без работы, я буду рад сделать его для вас. Подробности в конце Инструкции.
Наконец, поскольку это открытый исходный код, вы можете найти все файлы дизайна и код на GitHub:
Хотите купить Sup? Вы можете найти информацию в конце этого руководства.
Обновление: Спасибо всем, кто проголосовал за этот проект! Я очень счастлив, что выиграл свой первый конкурс инструкций, и я нашел хорошее применение подарочной карте Amazon - инструменты, которые я купил, должны позволить мне предоставлять более качественный контент в больших количествах.
И еще: я был приятно удивлен, увидев в сети две статьи, в которых упоминается этот проект! Большое спасибо Hackaday и Open-electronics.org за то, что сочли эту статью достойной. Вы можете найти оба ниже:
www.open-electronics.org/the-sup-low-cost-and-open-source-mouse-for-quadriplegics/
hackaday.com/2018/04/27/an-open-source-sip-and-puff-mouse-for-affordable-accessibility/
SUP также недавно был упомянут в журнале New Mobility Magazine. Вы можете найти эту статью здесь:
www.newmobility.com/2018/12/the-revolution-will-be-3d-printed/
Кредиты и благодарности:
Я очень благодарен моему другу Феликсу и его семье за то, что они отправили меня в Денвер (где живет Аллен) и заплатили за все, кроме 3D-принтера. Это действительно помогло начать разработку и сделать SUP в короткие сроки!
Дополнительная заслуга также принадлежит Феликсу за большую часть 3D-дизайна.
Наконец, спасибо Аллену за то, что он был тем, кому мы могли помочь, который был готов позволить нам вторгнуться и спросить его, как ему понравился наш сколоченный прототип.
Шаг 1. Инструменты, детали и материалы
Вот все, что вам понадобится для сборки устройства. Прежде чем заказать все, прочтите оставшуюся часть возможного, чтобы убедиться, что вы освоили набор навыков, необходимый для его сборки!
Части:
- Arduino Pro Micro (в частности, Pro Micro, с разъемом USB и ATmega32u4)
- Датчик давления MPXV7002DP с коммутационной платой
- Модуль джойстика
- Силиконовая трубка пищевого качества, 1/8 ВД на 1/4 НД, около 6 дюймов
- Детали, напечатанные на 3D-принтере, весом <= 72 грамма
- Провода (я использовал провода DuPont мама-мама, затем отрезал концы)
Инструменты:
- Паяльник (этот утюг 30 Вт на Amazon отлично работает)
- Пистолет для горячего клея (высокотемпературный)
- 3D-принтер (или напечатайте что-то через службу 3D-печати)
- Разное. такие инструменты, как плоскогубцы, отвертка с плоским жалом, наждачная бумага, острый маленький нож с тонким лезвием, кусачки для проволоки
Материалы:
- Обычная нить PLA (я использовал Hatchbox черный PLA)
- Гибкая нить, такая как TPU или NinjaFlex (мой принтер поставлялся с небольшим рулоном зеленого TPU. В качестве альтернативы вы можете изменить часть мундштука, чтобы принять трубку меньшего диаметра, а затем получить трубку с внутренним диаметром 2,5 мм для датчика)
Общая стоимость деталей составляет около 22 долларов, не считая нити для 3D-принтера. С учетом гибкого кронштейна и длинного USB-кабеля общая сумма составит около 49 долларов.
Обратите внимание, что по ссылкам здесь в основном самая дешевая цена из Китая! Чтобы получить их, потребуется как минимум месяц. Если вам нужны детали быстрее, вам придется заплатить немного больше за более близкие источники с более быстрой доставкой. Ожидайте, что общая стоимость составит около 75 долларов.
Шаг 2: 3D-печать
Все файлы STL можно найти на https://github.com/Bobcatmodder/SipNPuff_Mouse/, они вам понадобятся.
Если у вас нет 3D-принтера, вы можете воспользоваться множеством услуг 3D-печати. Если вы хотите получить недорогой принтер, который будет отлично работать (и не возражаете против сборки), я рекомендую Anet A8. Это клон Prusa i3 за 150 долларов, он хорошо зарекомендовал себя, и у него есть отличное онлайн-сообщество.
Корпус и рама:
Печатайте с опорами "повсюду" с высотой слоя 0,1-0,2 мм. Я использовал тип поддержки «сетка», но «линии», возможно, будет легче удалить
GoProClip и FacePlate:
Печатайте как обычно, без опор, высота слоя 0,1-0,2 мм
Адаптер трубки:
- Для печати на гибкой нити
- Высота слоя 0,1
- Отвод выключен
- Нет опор
Шаг 3: печать и отжиг мундштука
Прежде чем печатать все дополнительные мундштуки, рекомендуется убедиться, что они правильно усадятся после отжига.
Если вы хотите быть научным, распечатайте AnnealingTestr.stl и измерьте его до и после отжига, чтобы определить точный процент его сжатия / роста и по какой оси. Обычно ожидается около 5% усадки по осям X и Y и около 2% роста по оси Z. Без Hatchbox black PLA и конвекционной печи нам удалось добиться усадки примерно на 2% по осям X и Y и роста на 1% по оси Z.
Однако, поскольку эта деталь на самом деле предназначена только для умеренного удобного размещения на джойстике, вам не нужно быть очень точным. Используя наши значения для Hatchbox black PLA, вот процесс печати мундштука:
- Измените размер X и Y до 103%, оставьте Z как есть (мы стремимся увеличить размер примерно на 2% по сравнению с исходными размерами после отжига, чтобы он легко помещался на джойстике)
- Печать с полями, плюс поддерживает "касание рабочей пластины".
- Заполнение на 100% (чтобы вода не просачивалась в него)
- Нормальная скорость печати, высота слоя 0,1 мм
- (Если у вас есть кровать с подогревом, установите ее на 50C)
- Hotend при 220C.
Я мало играл с этими значениями, но это то, что я использовал для своего принтера (клон Prusa i3, Anet A8).
После того, как вы напечатали пару штук, попробуйте отжечь их и посмотреть, подходят ли они.
Процесс отжига:
- Разогрейте духовку, желательно в режиме конвекции (если ваша духовка это делает), примерно до 158F или 70C. Некоторые печи не опускаются так низко, если немного погаснет, это не имеет большого значения.
- Подождите, пока духовка нагреется, затем положите кусочки на что-нибудь, чтобы они не провалились.
- Установите таймер на час, затем оставьте его. Не открывайте духовку, чтобы проверить ее, так как охлаждающий эффект может испортить процесс отжига.
- Через час выключите духовку и оставьте кусок остыть вместе с духовкой. Для этого подойдет термометр, но вам не нужно быть сверхточным, просто подождите час или около того.
- Как только он в основном остынет, достаньте его. Теперь он должен быть прочнее и, что более важно, выдерживать кипячение и мытье в посудомоечной машине.
Шаг 4: постобработка 3D-отпечатков
Мне нравится, чтобы мои 3D-отпечатки были чистыми, но для этого часто требуется много поддержки. Если вы напечатали детали рамы и корпуса с заполнением, как рекомендовано, вам нужно немного очистить! Вот несколько советов по их удалению.
Как видите, я использовал отвертку, плоскогубцы и карманный нож, чтобы снять опоры. Я выбрал «решетчатые» опоры, потому что они работают лучше и, как правило, выходят чистыми и цельными, но их сложнее удалить. Вы можете выбить некоторые из них быстрым ударом отвертки, но будьте осторожны, чтобы не сломать саму часть - это легко сделать с рамной частью.
Часть корпуса печатается с большой опорной стенкой сзади, которую может быть особенно трудно удалить. Я считаю, что лучше всего обойти края небольшим лезвием ножа, а затем попытаться проткнуть его и отвести в сторону. Это потребует некоторой работы, но терпение окупается!
Когда вы закончите, вы можете выбросить искореженный вспомогательный материал или сохранить его, если вы действительно хотите использовать его повторно …
Шаг 5: проверка посадки
Теперь, когда все очищено, мы должны проверить, подходят ли детали, напечатанные на 3D-принтере.
Все модули собираются, как показано на рисунке, и должны плотно прилегать друг к другу. В противном случае попробуйте напечатать Frame.stl с размером 101–102% и изменить размер Case.stl по размеру.
Мундштук должен надеваться с небольшим усилием, но не сниматься слишком легко. Это хорошее время, чтобы убедиться, что силиконовая трубка подходит к мундштуку и адаптеру. Я обнаружил, что лучший способ надежно вставить конец - это вставить конец, насколько это возможно, а затем повернуть трубку, вдавливая ее внутрь, чтобы она хорошо прилегала к нижнему краю отверстия в адаптере.
Примечание. На фотографиях я использую модуль джойстика, к которому я уже припаял провода. Однако нормальный модуль джойстика должен подойти.
Шаг 6: подготовьте джойстик
Прежде чем мы сможем припаять провода к джойстику, нам нужно избавиться от старых контактов. Я обнаружил, что лучший способ - это отрезать как можно больше, затем нагреть каждый контакт паяльником и постучать по печатной плате, чтобы контакт выпал.
После того, как вы удалили старые контакты, припаяйте к модулю джойстика отрезок проводов (длиной около 20 см). Это помогает иметь уникальный цвет для каждой булавки, чтобы вы могли легко определить, какой провод куда идет позже.
Шаг 7: Схема
Теперь, когда у нас есть 3D-дизайн, время для принципиальной схемы и схемы подключения!
Схема на самом деле очень проста, без резисторов или внешних компонентов, только 3 разных модуля, подключенных друг к другу. Я привел схему выше, и я также расскажу, что и где происходит здесь:
Обрыв датчика давления:
- «A» идет к A0 на Arduino
- "5V" идет к VCC на Arduino
- «GND» идет на один из контактов GND на Arduino.
Модуль джойстика:
- "GND" идет на один из выводов GND на Arduino.
- «+ 5V» идет на вывод «RAW» на Arduino.
- «VRx» переходит к A2 на Arduino
- «VRy» переходит к A1 на Arduino
- «SW» переходит к D2 на Arduino (технически между ним и GND должен быть подтягивающий резистор 10 кОм. Однако текущий код не использует его, и его будет труднее использовать в любом случае, так что …)
Шаг 8: спаяйте все вместе
Теперь вы готовы собрать всю электронику!
Убедитесь, что модули установлены, как показано! Вам нужно, чтобы провода проходили через раму и через верхние или нижние слоты, к которым крепится Arduino. Ардуино будет болтаться, но провода пройдут через раму. Взгляните на картинки, они показывают, что я имею в виду.
Начните с зачистки и лужения концов всех проводов от джойстика, если вы еще этого не сделали. Затем, основываясь на схеме и изображениях, подключите его следующим образом.
- GND к GND (вывод 23) на Arduino
- + 5 В к контакту RAW на Arduino (рядом с контактом GND)
- VRx в A2 на Arduino
- VRy к A1 на Arduino
Мы пока оставим вывод SW, так как он припаивается к верхней части Arduino.
Переходя к датчику давления, вы сначала захотите определить, какие провода какие. Предполагая, что у вас есть рамка, обращенная к джойстику, направлен прямо от вас, порядок проводов следующий:
- Верхний провод: аналоговый выход «A» к контакту A0 Arduino
- Средний провод: 5 В, к выводу VCC Arduino
- Нижний провод: GND, к GND, контакт 4 сверху.
На этом этапе вы также можете подключить контакт SW джойстика к контакту 2 на Arduino, рядом с контактом GND.
Следите за тем, чтобы провода не перегибались слишком сильно, так как они легко порвутся.
Шаг 9. Загрузите программу и тест
Прежде чем приклеить все на место, убедимся, что все работает!
Если у вас нет Arduino IDE, вам необходимо загрузить ее с официального сайта Arduino по адресу Arduino.cc. Это бесплатно, хотя они предложат вам сделать пожертвование, если хотите.
После того, как вы загрузили и установили IDE, загрузите файл SupSipNPuff_Final.ino со страницы github, затем откройте его в IDE.
Чтобы загрузить его в Arduino, перейдите в «Инструменты», «Плата» и выберите «Arduino / Genuino Micro». В том же меню, в разделе «Порт», выберите все, что доступно, оно должно выглядеть примерно так: «COM12 (Arduino / Genuino Micro)». Если он не появляется, возможно, вам придется подождать, пока ваша ОС установит драйверы, но это должно происходить автоматически.
Нажмите кнопку загрузки (кнопка с круглой синей стрелкой вверху слева) или нажмите Ctrl / U (или аналогичный), чтобы загрузить программу. Когда индикатор выполнения внизу исчезнет и появится сообщение «Выгрузка завершена», вы готовы к тестированию!
Чтобы проверить, сначала снова присоедините мундштук и трубку (прикрепите трубку к самому верхнему порту на датчике с помощью переходника), затем удерживайте ее перед ртом и перемещайте мундштук. Он должен перемещать мышь по экрану. Попробуйте сделать жесткую затяжку или глоток для левого / правого щелчка, а мягкие глотки / затяжки для прокрутки вверх или вниз. Вы также можете сделать большой глоток или затяжку, чтобы удерживать «кнопку мыши» нажатой. Если у вас возникли проблемы, представьте мундштук как соломинку. Вместо того, чтобы дуть или вдыхать через него, вы создаете давление ртом, как при помощи соломинки.
Если одна или несколько осей перевернуты, это простое решение:
- Убедитесь, что в среде IDE открыт файл SipNPuffMouse.
- Прокрутите программу до тех пор, пока не найдете строку с надписью «Mouse.move (чтение [0], -reading [1], 0)»;
- Первое значение «чтения [0]» - это движение по оси X (по горизонтали), а второе «-чтение [1]» - это движение по оси Y (вертикальное перемещение. В зависимости от того, какое из них перевернуто, добавьте или удалите знак минус перед строка «чтение [x]», чтобы перевернуть значение.
- Перезагрузите программу и протестируйте ее!
(Примечание: еще один простой способ найти строку - использовать Ctrl / F. Я часто использую это при работе с моим кодом!)
Шаг 10: горячий клей
Теперь, когда ваш Sip-n-puff заработал, пришло время собрать конечный продукт! Вы можете гордиться тем, как красиво выглядит проводка, но некоторые люди предпочитают, чтобы все это было покрыто скучным пластиком, поэтому мы их сделаем.
Перед этим нам нужно обезопасить все внутри, чтобы они не разорвались, когда что-то подключено к розетке.
- Нанесите большое количество горячего клея на Arduino Micro. Мы приклеиваем его к планке, которая разделяет провода в местах выхода сверху и снизу.
- Если можете, сдвиньте датчик давления немного назад, нанесите на его крепление каплю горячего клея, а затем сдвиньте его вперед по капле. Добавьте еще немного по бокам, чтобы закрепить его по своему усмотрению. Горячий клей не повреждает электронику, но будьте осторожны, чтобы он не попал в порты, выходящие из датчика давления, куда мы подключаем трубки.
- Нанесите большое количество горячего клея на провода, выходящие из модуля джойстика. Вероятно, в этом нет необходимости, поскольку мы больше не будем их перемещать, но это хорошо на случай, если он когда-нибудь подвергнется сильной вибрации …
Теперь, когда все детали на месте, вставьте рамку в корпус. Сначала вам нужно будет отсоединить трубку. Теперь отцентрируйте лицевую панель над модулем джойстика, затем добавьте клей в те точки, где он соприкасается с рамой (не в этом случае, поскольку вы, возможно, захотите сдвинуть ее позже). Как только это будет установлено, вы можете выдвинуть рамку обратно, а затем добавить больше горячего клея по сторонам рамки, где он контактирует с лицевой панелью, просто чтобы усилить ее.
И последнее, но не менее важное: на той стороне корпуса, где нет отверстия для трубки и USB-разъема, немного отшлифуйте поверхность, чтобы придать ей шероховатость, в том месте, где вы хотите установить монтажную деталь. Проделайте то же самое с нижней частью монтажной детали, затем смажьте ее клеем и надежно прикрепите к корпусу. После того, как он застынет, вы можете отрезать излишки небольшим ножом, чтобы придать ему более профессиональный вид. (Ха-ха)
Шаг 11: настройка и использование
Теперь, когда вы готовы использовать устройство, вот несколько советов по настройке.
В комнате Аллена есть телевизор с большим экраном и входом HDMI, который висит на стене напротив его кровати. Поставили его ноутбук на комод под экраном и подключили. Если вы установите это в комнате, найдите что-нибудь немного длиннее 15 футов. Мы думали, что этого будет достаточно, но у него не было столько провисания, сколько мне хотелось бы.
Чтобы держать устройство, мы купили этот кронштейн на Amazon за 19,50 долларов. Это 25-дюймовый гибкий кронштейн, предназначенный для удержания веб-камеры или GoPro, с зажимом, который отлично подходит для закрепления на столе или кровати. На нем есть крепление в стиле GoPro, которое мы разработали для надежного крепления.
Когда мы впервые принесли его Аллену, я был удивлен тем, что на самом деле нужно было изменить. Что касается устройства, он просто хотел, чтобы мы немного замедлили курсор, что я с тех пор и сделал. Однако на самом деле ему нужно было больше голосового управления для своего компьютера, чтобы максимально исключить использование экранной клавиатуры. Sip-n-puff можно использовать в сочетании с некоторыми инструментами специальных возможностей на компьютере для максимальной эффективности. Список всего, что мы сделали для его компьютера, приведен ниже:
- Настройте Кортану на ответ в любое время на «Привет, Кортана».
- Установлена экранная клавиатура и добавлен ярлык на рабочий стол.
- Создал скрипт с AutoHotKey для открытия инструмента диктовки Windows 10 (Win / H).
- Установлен Firefox и Adblock и AdBlockPlus. (Кортана по-прежнему использует Edge, к сожалению, но вы получаете то, что получаете)
- Масштабированный графический интерфейс, значки и текст до 125%
- Установлен плагин в Firefox для включения голосового поиска одним нажатием кнопки (на таких сайтах, как Google)
- Установил CCleaner, чтобы попытаться заставить его компьютер работать быстрее (возможно, это не обязательно, но его ноутбук был бюджетной бюджетной моделью и все еще довольно медленный. Мне удалось немного ускорить его).
Я думаю, что в конечном итоге он будет использовать чаще всего функцию голосового поиска Кортаны, поэтому, возможно, большинство функций firefox останутся неиспользованными. Однако у него уже был Google Home и Alexa, поэтому он должен быстро привыкнуть к Cortana.
Еще одна полезная вещь - распечатать руководство пользователя (его можно найти, конечно, на GitHub) и оставить его вместе с устройством, чтобы медсестры знали, как отсоединить мундштук, и напомнить пользователю, как им пользоваться, если нужный.
Еще одна вещь: со всеми щелями и трещинами в детали, напечатанной на 3D-принтере, она будет собирать бактерии, если за ней не ухаживать должным образом. В руководстве пользователя мы рекомендуем делать дополнительные мундштуки и мыть их не реже одного раза в неделю в посудомоечной машине или стерилизовать в кипящей воде. Это поможет содержать их в чистоте!
Шаг 12: Готово
Надеюсь, к настоящему времени у вас есть готовая рабочая мышь Sip-N-Puff, и кто-то сможет использовать компьютер!
Если нет, я всегда здесь, чтобы помочь, и хотел бы услышать о любых проблемах или отзывы, которые у вас есть.
Второе изображение: это улучшенная версия Sup, которая решает проблемы с бактериями. Он включает дыхательный фильтр и мундштук из нержавеющей стали. Мундштук можно стерилизовать, а дыхательные фильтры заменять, чтобы бактерии не попали в устройство и не размножились на нем.
Хотите купить Sup?
У меня нет интернет-магазина, но я с радостью соберу для вас улучшенный Sup!
Чтобы купить Sup, вы можете связаться со мной по адресу Jacobtimothyfield (a) gmail (точка com).
Цена: если вы готовы подождать 3-4 месяца, стоимость составит около 120 долларов, включая доставку, 15-футовый USB-кабель и монтажный кронштейн. (Ожидание связано с тем, что я закупаю запчасти из Китая, а доставка занимает 1-3 месяца.)
Первое место в конкурсе микроконтроллеров
Рекомендуемые:
Комплект для обучения Arduino (открытый исходный код): 7 шагов (с изображениями)
Комплект для обучения Arduino (с открытым исходным кодом): если вы новичок в Arduino World и собираетесь изучать Arduino, имея некоторый практический опыт, эти инструкции и этот комплект для вас. Этот комплект также является хорошим выбором для учителей, которые любят обучать своих учеников Arduino простым способом
Датчик дверной сигнализации с магнитным переключателем, нормально открытый, простой проект, 100% рабочий, исходный код предоставлен: 3 шага
Датчик дверной сигнализации с магнитным переключателем, нормально открытый, простой проект, 100% рабочий, предоставлен исходный код: Описание: Привет, ребята, я собираюсь сделать учебник по сигнализации датчика магнитного переключателя MC-18, который работает в нормально открытом режиме. Тип переключателя: NO (нормально замкнутый тип), цепь нормально разомкнута, и цепь подключается, когда магнит находится рядом. Тростник
OpenLogger: портативный регистратор данных с высоким разрешением, Wi-Fi, открытый исходный код: 7 шагов
OpenLogger: портативный регистратор данных с открытым исходным кодом и поддержкой Wi-Fi с высоким разрешением: OpenLogger - это портативный недорогой регистратор данных с высоким разрешением с открытым исходным кодом, предназначенный для обеспечения высококачественных измерений без использования дорогостоящего программного обеспечения или написания программного обеспечения. с нуля. Если вы инженер, ученый или энтузиаст, который
[Робот Arduino] Как сделать робота захвата движения - Большой палец руки робота - Серводвигатель - Исходный код: 26 шагов (с изображениями)
[Робот Arduino] Как сделать робота захвата движения | Большой палец руки робота | Серводвигатель | Исходный код: Thumbs Robot. Использовал потенциометр серводвигателя MG90S. Это очень весело и просто! Код очень простой. Это всего около 30 строк. Это похоже на захват движения. Пожалуйста, оставьте любой вопрос или отзыв! [Инструкция] Исходный код https: //github.c
GTP USB PIC PROGRAMMER (открытый исходный код): 5 шагов (с изображениями)
GTP USB PIC PROGRAMMER (с открытым исходным кодом): эта работа включает в себя GTP USB (не plus или lite). Схема, фотографии и печатная плата были разработаны PICMASTERS на основе некоторых ценных работ, проделанных ранее. Этот программатор поддерживает pic10F, 12F, 16C, 16F, 18F, 24Cxx Eeprom. К сожалению, это горе