Страница 1 из 2

Помогите с ёмкостным сенсором на AVR

Добавлено: Вс мар 20, 2011 12:31:35
artemvinihenko
Мяу всем котам :))
Вообщем гуляя по просторам интернета и вынюхивания схемы ёмкостных датчиков ну или им подобным наткнулся на схемку на тини13 - она мне сразу понравилась - обвязки практически нет и чуствительность класная - вообщем то что нужно для выключателя :))
но есть одно НО - сенсор без фиксации.
воообщем обращаюсь к вам уважаемые коты за помощью :beer: , ктобы смог немного подправить прошивку (схему, проэкт протеус, исходник и прошивку прилагаю)
нужно чтоб при первом приближении "свет" вкл. а при повторном выкл.
всё довольно просто но в програмировании я неочень силён :(

просто нехочетса туда отдельно ещё тригер химичить - ведь это уже нужно больше места - а в выключателе его нетак уж и много....

кстати сайт с которого была взята схема отсюда http://ffix.ru/index.php?option=com_k2& ... &Itemid=43

фьюзы оставил заводские по умолчанию

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Вс мар 20, 2011 19:12:25
CS16AMX
а как насчёт сенсорного экрана с резистивным принципом? мегу 8 поставить и сенсор , провёл в верх включил , провёл в низ рубанул типа как шимом можно и легко налепить на поверхность обычного выключателя

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Пн мар 21, 2011 11:23:04
artemvinihenko
CS16AMX писал(а):а как насчёт сенсорного экрана с резистивным принципом? мегу 8 поставить и сенсор , провёл в верх включил , провёл в низ рубанул типа как шимом можно и легко налепить на поверхность обычного выключателя
Идея хорошая:)
А почему именно на меге8 - там ведь много неиспользованых
ресурсов останется...лучшеб на какомнибудь 8ногом контролере.

Резестивный сенсор, эт я так понимаю к ниму касатся придётся - былобы лучше и удобней если б он через крышку реагировал)))

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Вт мар 22, 2011 17:32:23
CS16AMX
ну смотри сенсорный экран 60руб. Мега 8 66р. если свежий завоз
ставим шим он уже притормазится ) ставим сенсор и будет норма) хочеш и будет 2 управляемых регулятора )

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Вт мар 22, 2011 17:50:09
CS16AMX
вобщем интересно ? пиши скину настройки )
там всего 50строчек с настройкой ацп ,12 на оценку сенсора , наклеил его на выкючатель,а сенсор то прозрачный) незачем под крышку прятать)
я по 3310 рисовал зверская вещь)
мега 8 , 4 порта нормально вешаем тачскрин и не парим мозг как экономить на ножках )

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Вт мар 22, 2011 18:31:14
artemvinihenko
CS16AMX писал(а):вобщем интересно ? пиши скину настройки )
конечно интересно :) скидуй посмотрю на сие чудо техники :) может что-то и получится :)

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Вт мар 22, 2011 22:38:07
CS16AMX
#define ADC_VREF_TYPE 0x00

// Read the AD conversion result
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
delay_us(10);
ADCSRA|=0x40;
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}
unsigned int n,k,x,y,i,j;
#define ADC_DDR DDRC
#define ADC_PORT PORTC
void main(void)
{

MCUCR=0x00;
TIMSK=0x00;
ACSR=0x80;
SFIOR=0x00;

// ADC initialization
// ADC Clock frequency: 1000,000 kHz
// ADC Voltage Reference: AREF pin
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x83;

while (1)
{ { //тачскрин
ADC_DDR=0b00001001;
ADC_PORT=0b00001000;
i=read_adc(2); //порты }
if(i>50) //спросили разрешение на точку , если не тыкаем то идём нафиг)

{{ ADC_DDR=0b00001010;
ADC_PORT=0b00001000;

delay_ms(2);
n=read_adc(0); //порты // если да то ето Х
}

{ ADC_DDR=0b00000101;
ADC_PORT=0b00000100;

delay_ms(2);
k=read_adc(1); //порты // ели да то У

} } // тачскрин
наздоровье) С0 С2 1 резистор Х С1 С3 У если не забыл ещё

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Ср мар 23, 2011 09:24:37
leowka
Если нужно убрать автоматическое отключение то заменяем этот код:

Код: Выделить всё

 if ((count_sr > znach) & (count_schet == 0)) //Если сенсор сработал
         {         
            DEVICE = 1;           
            delay_ms(500);
            count_schet = 1; 
         }   
         else  
         {
          if(count_schet > 0)   //Задержка отключения девайса 
          {
           count_schet++;
          if(count_schet > 6000)
           {
            count_schet = 0;
            DEVICE = 0;
            delay_ms(100);   
           }   
          }
         }   

заменить на этот:

Код: Выделить всё

       
      if (count_sr > znach) //Если сенсор сработал
         {         
            DEVICE = ~DEVICE;            
            delay_ms(500);
         }   

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Ср мар 23, 2011 19:59:58
artemvinihenko
а тожесамое только в проэкте авр студио у тебя есть? а то чтото у меня неполучается в свой залить - кучу ошибок выдаёт.
кстати какой сенсор используется (модель)? и схему бы а то непонятно шо куда цеплять надо... :dont_know:

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Ср мар 23, 2011 21:29:50
leowka
к сожалению для авр студии нет, сенсор обычный кусок медного текстолита, там написано вроде, просто провод припаиваешь к нему, вот и весь сенсор. Скачайте любой кодевижн и соберите проект, все должно быть без ошибок.
На всяк случай выложу исправленную прошивку.

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Ср мар 23, 2011 22:43:32
artemvinihenko
leowka, большое спасибо))) запустил в коде-визишон и заменил кусок кода :)
в протеусе симуляция прошла успешна. :) буду пробовать на железе :)

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Чт мар 24, 2011 01:50:37
myx
Кстати, на том сайте уже появилась прошивка с триггерным включением нагрузки :)) http://ffix.ru/index.php?option=com_k2& ... &Itemid=43
Дополнение:

Добавлена прошивка и исходный код варианта с фиксацией нагрузки. Теперь нагрузка не отключается после определенного времени, а только по повторному срабатыванию сенсора.

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Чт мар 24, 2011 11:48:31
artemvinihenko
посмотрел даташит на тини13, там оказывается вродн есть шим -можноли реализовать плавное разгорание и затухание лампы?как это сделать? и кстати ещё остаётся один неиспользованвй пин - можно повесить на него ик-примник,чтоб м пульта можно было вкл и откл.
понимаю эт несовсем то в чём я просил о помощи но хотелосьбы сделать более универсальный выключатель,и спокоцно вешать его вместо стандартного.
собирал на пик12ф629 но чёт он мне несовсем понравился - с глюками однако...

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Чт мар 24, 2011 13:00:11
CS16AMX
я вообще пики неуважаю
а тини слишком тупая ,памяти на rc5 нехватит ,на шим если только ресурс позволит ,так то можно и кодом вывести шим на любую ногу но будет подтормаживать и сенсор не подходит ,у тебя он не меряет точное расстояние ,а просто считает время присутстия ,опять же упрёмся в память мега TQFP плоская посравнению с таней при желание можно даже светодиодную люстру сделать и менять тон освещения)

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Чт мар 24, 2011 19:02:20
artemvinihenko
CS16AMX писал(а):я вообще пики неуважаю
а тини слишком тупая ,памяти на rc5 нехватит ,на шим если только ресурс позволит ,так то можно и кодом вывести шим на любую ногу но будет подтормаживать и сенсор не подходит ,у тебя он не меряет точное расстояние ,а просто считает время присутстия ,опять же упрёмся в память мега TQFP плоская посравнению с таней при желание можно даже светодиодную люстру сделать и менять тон освещения)
мне пики тоже неоч нравятся.....

так может сие чудо перенести на мегу8 ? там памяти побольше, на борту аж три шима :)) и для rc5 ресурсов точно хватит :)

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Чт мар 24, 2011 20:16:47
TracerrecarT
CS16AMX писал(а):я вообще пики неуважаю
а тини слишком тупая ,памяти на rc5 нехватит ,на шим если только ресурс позволит ,так то можно и кодом вывести шим на любую ногу но будет подтормаживать и сенсор не подходит ,у тебя он не меряет точное расстояние ,а просто считает время присутстия ,опять же упрёмся в память мега TQFP плоская посравнению с таней при желание можно даже светодиодную люстру сделать и менять тон освещения)
Возьмите tiny85 - so8 корпус а внутри mega8, ШИМ с тактом 64MHz от PLC

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Пт мар 25, 2011 00:02:18
myx
Вот проект http://radiokot.ru/forum/viewtopic.php?p=746425#p746425 , в который прошу помощи добавить кнопку ручного включения и будет вам выключатель на RC5 на тини13.

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Пт мар 25, 2011 08:32:17
CS16AMX
myx писал(а):Вот проект http://radiokot.ru/forum/viewtopic.php?p=746425#p746425 , в который прошу помощи добавить кнопку ручного включения и будет вам выключатель на RC5 на тини13.
не сравниваем попу с пальцем , си и асма разница нереально большая , я в асме не понимаю , и корректировка на конкретный пульт будет одним гемороем)

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Пт мар 25, 2011 08:38:03
CS16AMX
artemvinihenko писал(а):
так может сие чудо перенести на мегу8 ? там памяти побольше, на борту аж три шима :)) и для rc5 ресурсов точно хватит :)
у меня дипломная на тему умный дом ,так там у меня rc5)
и могу сказать что в протеусе у меня есть рабочий проект ,но в жизни мозг полощит если нету нужного пульта, так что тематика меня офигенно интересует) и ресурсы для слежения что в нутри творится у меня есть)
если недо ,могу кинуть под филипс проект , только на выходных меня не будет ...
есть на студио сразу готовый проект регулеровки громкости , там типа универсальный под всех , но студийный язык мне не понятен( там переключатель 8 релюх и меню , но схема сама просто хрень и перевод ресурсов автора)

Re: Помогите с ёмкостным сенсором на AVR

Добавлено: Пт мар 25, 2011 12:22:45
artemvinihenko
CS16AMX писал(а):
artemvinihenko писал(а):
так может сие чудо перенести на мегу8 ? там памяти побольше, на борту аж три шима :)) и для rc5 ресурсов точно хватит :)
у меня дипломная на тему умный дом ,так там у меня rc5)
и могу сказать что в протеусе у меня есть рабочий проект ,но в жизни мозг полощит если нету нужного пульта, так что тематика меня офигенно интересует) и ресурсы для слежения что в нутри творится у меня есть)
если недо ,могу кинуть под филипс проект , только на выходных меня не будет ...
есть на студио сразу готовый проект регулеровки громкости , там типа универсальный под всех , но студийный язык мне не понятен( там переключатель 8 релюх и меню , но схема сама просто хрень и перевод ресурсов автора)
интересно посмотреть на ваш проэкт :)