Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » Arduino » Программная реализация емкостного реле на Arduino

    Программная реализация емкостного реле на Arduino





    Автор Instructables под ником ShaneCunningham предлагает реализовать емкостное реле на Arduino программно. Из дополнительных деталей потребуются только собственно емкостные датчики и резисторы. Никаких внешних аппаратных генераторов. В ПО самоделки задействованы эта и эта сторонние наработки.

    Емкостные датчики - двухслойные, трёхвыводные. Мастер изготавливает их своими руками. Картонный квадрат со стороной в 300 мм оклеивает фольгой - это будет вывод, соединяемый с общим проводом. Сверху помещает картонный квадрат со стороной в 100 мм, также оклеенный фольгой. На нём слой фольги разделяет на две части по контуру, похожему на осциллограмму прямоугольных импульсов. Это будут ещё два вывода.





    Каждый из изготовленных датчиков комплектует резистором на 1 МОм. Если датчик один, подключает его как показано ниже. Если же их несколько, придётся задействовать ещё выводы Arduino - по два на датчик - и учесть это в скетче.



    Вот что получается у мастера:






    Составляет скетч, отправляющий по последовательному интерфейсу данные, снятые с датчика:

    ///////////////////////////////////////
    
    void loop() {
    long total1 = cs_4_2.capacitiveSensor(30);
    
    Serial.println(total1);
    
    /////////////////////////////////////////
    
    Code for Communicating with Processing over Serial
    
    */
    
    int val1 = 0;
    
    int val2 = 0;
    
    int val3 = 0;
    
    int inByte = 0;
    
    CapacitiveSensor cs_4_2 = CapacitiveSensor(4,2); // 1M resistor between pins 4 & 2, pin 2 is sensor pin, add a wire and or foil if desired
    
    CapacitiveSensor cs_4_6 = CapacitiveSensor(4,6); // 1M resistor between pins 4 & 6, pin 6 is sensor pin, add a wire and or foil
    
    void setup() {
    
    cs_4_2.set_CS_AutocaL_Millis(0xFFFFFFFF); // turn off autocalibrate on channel 1 - just as an example
    
    cs_4_6.set_CS_AutocaL_Millis(0xFFFFFFFF);
    
    Serial.begin(9600);
    
    pinMode(2, INPUT);
    
    pinMode(6, INPUT);
    
    // pinMode(8, INPUT);
    
    establishContact(); // send a byte to establish contact until receiver responds
    
    void loop() {
    
    // if we get a valid byte, read inputs:
    
    if (Serial.available() > 0){
    
    // get incoming byte:
    
    inByte = Serial.read();
    
    //long start = millis();
    
    long total1 = cs_4_2.capacitiveSensor(30);
    
    long total2 = cs_4_6.capacitiveSensor(30);
    
    //long total3 = cs_4_8.capacitiveSensor(30);
    
    //delay(10);
    
    val1 = map(total1, 700, 2300, 0, 255); // sensor values from calibration are mapped to here - begins to detect human proximity at 700 (4" away) , hand nearly touching sensor at 2300
    
    val2 = map(total2, 30, 175, 0, 255);
    
    //val3 = map(total3, 0, 13000, 0, 255);
    
    Serial.write(val1);
    
    Serial.write(val2);
    
    //Serial.write(val3);
    
    //Serial.print(val1);
    
    //delay(50);
    
    }
    
    void establishContact() {
    
    while (Serial.available() <= 0) {
    
    Serial.print('A');
    
    delay(300); }


    Дальнейший анализ поступающей информации мастер организует на ПК в среде Processing.












    Но это - лишь начало эксперимента. В дальнейшем можно задействовать для обработки сигналов с датчиков Arduino - то же самое, либо, если его ресурсов не хватит, ещё одно.

    Источник (Source)
    Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.

    Шкальный индикатор расстояния со звуковым сигналом

    Передача в среду Scratch данных от акселерометра через Arduino

    10
    Идея
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    10
    Описание
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    10
    Исполнение
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    Итоговая оценка: 10 из 10 (голосов: 1 / История оценок)

    Добавить комментарий

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

    Опрос
    А Вы знаете, что на сайте оплачиваются отчеты о создании самоделок?

    Последние комментарии

    Все комментарии