Operácie

Ovládanie elektrického zámku z mobilnej aplikácie

Zo stránky SensorWiki

Záverečný projekt predmetu MIPS / LS2025 - Filip Pinďar

 https://www.engineersgarage.com/how-to-design-a-smartphone-operated-door-lock/

Zadanie

Ovládanie elektrického relé z mobilnej aplikácie pomocou bluetooth modulu

Vývojová doska Arduino Uno.

Literatúra:


Analýza a opis riešenia

Pre bezdrôtovú komunikáciu medzi mobilom a arduinom som zvolil nízkoenergetický Bluetooth modul 4.0. Má napájanie 5V z arduina a pre komunikácou používa piny Rx a Tx

Bluetooth 4.0 modul.

Spúštací mechanizmus som zvolil 5V arduíno relé s 1 kanálom a zabudovanou ledkou. Napájaný je 5V z arduiná a má jeden kominikačný pin.

5V Rele modul.

Pre komunikáciu mobilu s Bluetooth modulom som použil už vytvorenú aplikácou Serial Bluetooth terminal ktorá je schopná sa pripojiť na Bluetooth modul a komunikovať s ním. Stačí ju zapnúť, vybrať daný modul a už môžete posielať cez terminál znaky.

Schema zapojenia.

Algoritmus a program

Algoritmus programu využíva toto a toto, základné funkcie sú takéto a voláma ich tuto... Výpis kódu je nižšie...


#include <avr/io.h>

#define F_CPU 16000000UL
#include <avr/io.h>
#include <util/delay.h>

#define RELE PB5
#define RX PD2 
#define TX PD3



char get_char() {
    uint8_t i;
    char receivedChar = 0;

   
    while (PIND & (1 << RX));
    _delay_us(104 + 52); 

    for (i = 0; i < 8; i++) {
        if (PIND & (1 << RX))
            receivedChar |= (1 << i);
        _delay_us(104);
    }

  
    _delay_us(104);

    return receivedChar;
}

int main(void) {

    DDRB |= (1 << RELE); // Rele pin ako výstup
    DDRD |= (1 << TX);  // TX pin ako výstup
    DDRD &= ~(1 << RX); // RX pin ako vstup
    PORTD |= (1 << RX); // pull-up na RX

    

    while (1) {
        char c = get_char();
        
        if (c == '0') {
    PORTB &= ~(1 << RELE); // aktivuj relé 
} else if (c == '1') {
    PORTB |= (1 << RELE); // deaktivuj relé 
}
            
        }
		return(0);
    }
#include <avr/io.h>

void adc_init(void);                                   // A/D converter initialization

unsigned int adc_read(char a_pin);

Pridajte sem aj zbalený kompletný projekt, napríklad takto (použite jednoznačné pomenovanie, nemôžeme mať na serveri 10x zdrojaky.zip:

Zdrojový kód: zdrojaky.zip

Overenie

Ako ste overili funkciu, napríklad... Na používanie našej aplikácie stačia dve tlačítka a postup používania je opísaný v sekcii popis riešenia. Na konci uvádzame fotku hotového zariadenia.

Aplikácia.

Video:



Kľúčové slová 'Category', ktoré sú na konci stránky nemeňte.