| Автор |
Съобщение |
|
juzisound
Ранг: Почетен член
Регистриран на: Съб Май 27, 2006 12:37 pm Мнения: 647 Местоположение: с. Згалево
|
 Сензори за докосване с пръстите на ръцете - идеи?
Здравейте!
Наумил съм си да направя следната джаджа - музикален инструмент /нали съм си музикант/, който ползва пръстовката за свирене на кавал или гайда! Да не се чудете - аз съм гайдар!
Та в тая връзка - трябва ми следната постановка. По принцип представете си че сте хванали една тръба и пръстите ви опират в нея. Ползват се 8 пръста - по 4 на всяка ръка. Не трябва да има никакви механични бутони - щото те биха за забавили реакциите на пръстите - щото при истинските инструменти пръста запушва дупка и нищо не му пречи да мърда - нагоре- надолу, тоест трябва да се запази същото нулево усилие. Сега въпроса е как да стане...
Какво съм намислил до момента:
Имам ПИК и ползвам един извод да генерира честота /в прекъсване/ - по принцип колкото си може по висока - в разумни граници де. На мястото където лежи всеки пръст поставям по 2 метални пластинки. На едната идва импулсния сигнал от изхода на пика, а другата отива във друг пин - дето е вход. Това се повтаря 8 пъти за всеки пръст. Така имам общо един изход и 8 входа. Идеята е че като си допреш пръста - през съпротивлението на кожата импулсите от изхода ще преминават към входа /естествено ще има и някаква минимална аналогова част/ и като си чета пиновете ще мога да разбера дали има сложен пръст или не. Понеже аз си генерирам импулсите - ще мога и примерно да виждам дали постъпващите импулси са синфазни с генерираните на изхода и така се надявам да имам добра шумоустойчивост. Сега идват въпросите:
1. Дали тая постановка може да стане на практика - ако някой има някакъв опит - моля да сподели - или пък ако има нещо готово за целта - да не откривам топлата вода.
2. Ако идеята става - то тогава докато с програмирането нямам проблеми - с "минималната електроника" за която споменах съвсем няма да е така. Поне за момента си я представям примерно така - изходаните импулси да не се подава пряко от извода на контролера- а през някакъв транзисторен повторител - може даже да се наложи и да са с по-високо напрежение от 5 волта - са да се осигури нужната чувствителност. На входа пък си представям операционен усилвател с голямо усилване почти без обратна връзка - така че да има голямо входно съпротивление и като му усигуря подходяща работна точка и го карам да работи почти като компаратор - да може през съпротивлението на кожата да приема импулсите от изхода и да формира подобни за входа. Проблем е също че не знам какво е съпротивлението на кожата - а то май варира в широки граници в зависимост от влажността. Незнам също дали зависи от честотата - и ако зависи - как?
Та в общи линии това е.
Какво мислите? Очаквам коментари... После ще питам и за някои подробности дето не са ми ясни...
Само за уточнение - Звук няма да генерирам - а ще изкарвам MIDI сигнал - да управлявам някакъв sound модул.
|
| Пет Дек 07, 2007 6:54 pm |
|
 |
|
3aek
Ранг: Форумен бог
Регистриран на: Вто Яну 10, 2006 2:40 pm Мнения: 2258
|
със съпротивление ще стане, но инструмента ще свири различно в зависимост дали са ти сухи или изпотени пръстите
по добре прегледай за капацитивни бутони, има писано как да стане при microchip, cypress, analog, freescale, texas instruments
не е трудно, може да се достигне чувствителност до сантиметър, но колкото по чувствително е толкова повече шум ще имаш и ще трябва да филтрираш
|
| Пет Дек 07, 2007 7:22 pm |
|
 |
|
juzisound
Ранг: Почетен член
Регистриран на: Съб Май 27, 2006 12:37 pm Мнения: 647 Местоположение: с. Згалево
|
То е ясно че съпротивлението на пръстите ще е различно че даже и от степента на натиск, но аз се надявах да ползвам постановката на "цифровия звукозапис" върху аналогов носител - тоест ако дадено ниво примерно е със стойност 5 - то ако е записано на аналогов принцип - то с влошаването на записа - ще се промени и записаното ниво - тоест може да стане 4,5. А ако записа е цифров, то тогава и да се влоши записа върху лентата - стига да е четим то пак ще се извлече нивото 5 и изходния сигнал ще отговаря точно на оригинала. Тоест не е важно колко е добро качеството на записа на цифрата 5 - стига да се прочете - резултата винаги е 5.
Та мислих си че тоя принцип ще може да се принесе и тук.
Мисля примерно да разпознавам има ли пръст или няма по следния начин.
Следя примерно 100 поредни импулса преди изобщо да реагирам.
Ако през последните 100 поредни импулса - входните нива прочетени от даден пин отговарят точно на подадените импулси от изхода - /правя проверката примерно по средата на дължината на импулса - за да избегна евентуални закъсненията по фронтовете/ значи има сложен пръст. Ако няма импулси - или има - но имат случаен характер и не отговарят на подаваните - значи няма пръст. Евентуално може да се приложи и някакво процентно съотношение. Верно че така ще имам някакво закъснение при отчитането - равно на броя на следените импулси - ама ако честотата е голяма то няма да има практическо значение.
|
| Пет Дек 07, 2007 7:36 pm |
|
 |
|
Ки4о
Ранг: Форумен бог
Регистриран на: Съб Юли 22, 2006 9:50 pm Мнения: 1638
|
някъде имаше из нета описание на такива сензори.Срещал съм подобни при радиостанция Debeg (Decca) - плосък твърд панел с рисунки на бутони и реагират при докосване,без да натискаш(ама какво имаше под панела  ).Виж за капацитивни сензорни ключове - могатъ да ти сършат работа.
|
| Пет Дек 07, 2007 8:30 pm |
|
 |
|
Zeus
Ранг: Почетен член
Регистриран на: Вто Окт 03, 2006 11:58 am Мнения: 924 Местоположение: Ботевград
|
Едно време си бях правил сензорни бутони за превключване обхватите на един мултицет. Принципа беше елементарен. Два транзистора свързани в схема дарлингтон, за да се вдигне усилването. Базата на първия се прикачва на сензорна - може да е всякакъв метал (ако искасх и главата на кабърче). Като докоснеш метала, транзитора се отпушва и от него вземаш сигнала по-нататък. Можеш да намериш и готов дарлингтон транзистор в един корпус.
|
| Пет Дек 07, 2007 9:31 pm |
|
 |
|
juzisound
Ранг: Почетен член
Регистриран на: Съб Май 27, 2006 12:37 pm Мнения: 647 Местоположение: с. Згалево
|
Предварително искам да кажа че нямам опит - ама нещо не ми харесва идеята да се разчита на капацитет само. Имам в предвид че трябва доста точно да се отчита времето на вдигане на пръста, а и по едно и също време ще има много опряни пръсти - и само един вдигнат - та незнам дали като пръстите дават връзка между отделните датчици това няма да пречи. Предполагам че тези клавиатури дето са на такъв принцип отчитат само по един натиснат бутон а не няколко едновременно.
За идеята с дарлингтон транзистора - ами не разбирам кое кара транзистора да се отпушва - и не е ли това някакво паразитно напрежение - случайно индукторано в тялото от околниото обкръжение? Ще ми се някак аз да генерирам някакъв сигнал - че да знам дали него получавам обратно или нещо случайно...
Няколко дена подред си меря насъпротивлението на кожата  по различно време. С мултицет естественно...Ако опра сондите, които са раздалечени на около 0.5см една от друга - меря около 5 мегаома. Малко множко ми се вижда - ама незнам как се променя съпротивлението с честотата. Предполагам че мултицета мери с постоянно напрежение.
Някой не е ли ползвал подобна идея като мойта? - че ако съм съвсем на грешен път - да се връщам у правия... 
|
| Пет Дек 07, 2007 9:43 pm |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
Имаш 2 подхода. Единия по добрия е капацитивен както каза 3aek. Потърси си информация по въпроса. Има много по нета.
Ако трябва да минеш все пак на електрически принцип ще е по добре да дадеш на тялото си потенциал спрямо бутоните. Например в мястото където държиш инструмента с другата си ръка. Приемаш че при докоснат бутон ще имаш максимум 2Moma съпротивление между тази пластина и бутона и нататък работата ти е съвсем проста. Пика има CMOS входове с много голямо съпротивление така че не ти трябват повторители. Малко пасивни елементи за да избегнеш индуцираните 50Hz/по ниво ги изключваш/ и си работиш като с нормална клавиатура.Ще е малко по добра реализацията ако на входа сложиш CMOS тригери на шмидт за да придобият хистерезис.
Това ти е достатъчно като начална информация,покопай по въпроса и нататък се очаква да зададеш конкретен въпрос ако видиш зор.
|
| Пет Дек 07, 2007 9:47 pm |
|
 |
|
kasparov
Ранг: Почетен член
Регистриран на: Сря Апр 05, 2006 9:52 pm Мнения: 877 Местоположение: Разград
|
А как стои въпроса с динамиката? Гайдата не е пиано, но все пак има ли значение скоростта, с която се затварят дупките? Как ще се симулира силата на духането (стискането)?
|
| Пет Дек 07, 2007 10:24 pm |
|
 |
|
juzisound
Ранг: Почетен член
Регистриран на: Съб Май 27, 2006 12:37 pm Мнения: 647 Местоположение: с. Згалево
|
То целта е повече да се имитира кавал - не гайда. Принципа е същия - само дето на кавала се надува постоянно и няма мех.
Ами за духането имаме датчик за налягане - който се монтира в полуотворена тръба - или почти затворена - щото чевек контролира налягането по лесно ако издиша /щото издишането е част от дишането/ от колкото ако просто надува в тръба без отвор. Та от тоя датчил разбираме кога има тон за свирене - а от оложението на пръстите - кой тон.
Динамиката -/силата/ идва от силата на надуване. Бързината на натискането е важна - ама човек едва ли може да си мръдне пръста с честота по-голяма от 5 херца - айде 10 да кажем, та изглежда ще има време да се изчислява каквото е нужно. А и минимално защитно закъснение просто няма да се усеща. За пример - закъснение от 5-7мс при свирене на пиано не се забелязва от свирещия.
Чета за тоя капацитивен метод - ам все ми се струва че е за 1 клавиш по едно и също време - а тук по принцип нормалното положение е - всички пръсти сложени - само един вдигнат. Ще му мисля още де - пък и ще понаправя някакви първи проби.
Nikola Kirov - какво имаше в предвид с "Малко пасивни елементи за да избегнеш индуцираните 50Hz/по ниво ги изключваш/ и си работиш като с нормална клавиатура." По точно "/по ниво ги изключваш/"? Как така по ниво - че нещо не схващам?
|
| Пет Дек 07, 2007 10:43 pm |
|
 |
|
kiiid
Ранг: Почетен член
Регистриран на: Съб Сеп 24, 2005 2:00 pm Мнения: 787
|
що не погледнеш CapSense микроконтролерите на Cypress?
|
| Съб Дек 08, 2007 7:04 am |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
Полезния сигнал ще ти идва с ниво определящо се от максимално съпротивление 2Mom. Смущението ще е с по ниско ниво. Входовете на процесора или тригера на шмит имат праг в които се превключват от 0 в 1 ца.
Ще си спретнеш един делител с високоомни резистори и чрез стойностите им ще постигнеш необходимото  :)
За целта ще ти свърши работа само закона на ом. А казвам че ще е като обикновенна клавиатура щото като пипнеш ще имаш просто ниво на пина което да четеш. С тригери на шмидт вероятно ще успееш да го докараш да работи и без софтуерна филтрация на входа.
И обърни внимание че имаш 2 варианта. Общ да ти е минуса и общ да ти е + . Така прага ти се явява различен и може да си подбереш необходимия ти вариант.
|
| Съб Дек 08, 2007 12:23 pm |
|
 |
|
bongo-bongo
Ранг: Почетен член
Регистриран на: Нед Юли 29, 2007 2:41 pm Мнения: 610
|
juzisound , с духането на кавала си се справил... Шшшш! Друго имах предвид!
Ама с пръстите си мноого далеч - ще ти е много изкуствен кавала. Той не е със щрак-щрак клапи. Дори и да издокараш меренето на съпротивлението на кожата просто ще направиш нов електронен инструмент.
- За сензорните бутони:
Теоритично съпротивлението на кожата на пръстите е от 0,1 до 2-3 мегаома и е доста променливо: нали затова го мерят в детекторите на лъжата...
Вместо да се бориш със смущенията можеш директно да ги ползваш: пластинката се свързва през R десетки килоома към защитен с диоди вход на CMOS шмитер. Фонът в жилищно помещение (дори без компютър и ТВ) индуктира достатъчно напрежение.
 Ама внимавай със свързването за да не убиеш някого!
В телевизорите имаше сензорен пулт работещ и на 2-та принципа: 2-е метални пластинки на около 2мм. Едната е свързана през 10Мома към около 50волта. Другата през няколко Мома отива на входа на специален шмитер - все пак в ТВ-то смущенията са доста големи.
- Капацитивните датчици са друга свирка: мери се закъснението на импулс през RC група където C е пластинка (може и изолирана) до която се опират пръстите. Май внасяха около 10-30пкф при изолираната. Отива на входа на шмитер. Сензорите се сканират поотделно. Идеята е: подава се импулс и ако след около t=a.R.Co е стигнал до входа значи няма пръст.
Според мен трябва да мериш отдалечеността на пръста от дупката. Има достатъчно методи - колегите ги знаят по-добре от мен. Ако искаш ползвай и лазери, особено за последната дупка
P.S. не знам колко точно ще е ако мериш скоростта на въздуха през всяка дупка... Най-простият датчик е от 2-е "жици", термистори или термодвойки, едната от който се подгрява с ток.
Но при всички положения само с PIC няма да минеш
_________________ Тя простотията по хората ходи
|
| Съб Дек 08, 2007 12:47 pm |
|
 |
|
Ки4о
Ранг: Форумен бог
Регистриран на: Съб Юли 22, 2006 9:50 pm Мнения: 1638
|
Ако може някъде да ти се изработи върху PVC фолио едни със писти и едно с контактни площадки - както при GSM-ите но вместо бутона да е на ецнат на платката да е върху фолио.Залепваш където искаш и работиш все едни имаш гъвкава клавиатура.Въпроса е от къде може да се намери 
|
| Съб Дек 08, 2007 3:00 pm |
|
 |
|
quad
Ранг: Новодошъл
Регистриран на: Пон Авг 28, 2006 6:51 pm Мнения: 103
|
 Re: Сензори за докосване с пръстите на ръцете - идеи?
Вариант 1.
Вземаш си един светодиоден индикатор примерно от неомонтана, налепваш го и пипаш активния край с пръст. В резултат поне първия светодиод ще светне...сам си знаеш нататък, особено ако вместо светодиод има оптрон. За датчик има маломощни транзистори който са с метален корпус и корпуса е базата.
Вариант 2.
Казваш че имитираш кавал. В отворите на кавала слагаш на всяка дупка IR предавател и приемник. Когато пръста ти е в дупката лъчите не минават и сигнала е 0. Когато дигнеш пръста имаш 1.
_________________ Ти не си някаква атракция на пътя, ти си част от него!
|
| Съб Дек 08, 2007 3:17 pm |
|
 |
|
juzisound
Ранг: Почетен член
Регистриран на: Съб Май 27, 2006 12:37 pm Мнения: 647 Местоположение: с. Згалево
|
Здравейте отново!
Поогледах капацетивните сензори - ама май няма да свършат работа - щото поне тия 2-3 модела дето гледах имат минимално закъснение от 10мс - а това вече ще ми дойде бавно. Останах с впечатление че май всичките са с подобно закъснение - с цел избягване на грешки. освен това там има й някакви самокалибровки от време на време и т.н. За измерване разстоянието до пръста и аз мислих - ама пък става прекалено сложно - и трудно за реализация. Интересен е метода със светодиодния индикатор - и от там ми дойде още по щурава идея. Само за уточнение - то целта не е да се имитира акустичния кавал - щото тоя дето свири си е кавалджия и акустичен си има, идеята е с подобно нещо свирещия да управлява синтезатор - все едно че свири по клавиятура на пиано - малко грубо казано - ама на практика си е така. Та идеята - детектирането на пръст най вероятно ще се получи добре по резистивния метод - ама сега пък ми се прииска да мога и да разбера ако само част от пръста е надигнат - все едно е запушена половината дупка. Има такива чалъми при кавала. Та се чудя сега от чисто цивров вид - да взема малко да попремина на аналогов - тоест пак да генерирам някаква честота - обаче с нея през съпротивлението на пръста да зареждам кондензатор и да меря нивото на заряда с АДЦ-то. Канали има достатъчно. Ще видим само дали ще ми стигне бързодействието...
|
| Съб Дек 08, 2007 6:57 pm |
|
|