Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Prosta centralka Alarmowa, na Arduino Uno R3 (kod napisany w C/C++ )

Arsenek-galu 29 Jan 2021 10:43 822 7
Optex
  • #1
    Arsenek-galu
    Level 3  
    Witam serdecznie!

    Chciałbym uzyskać pomoc, od kogoś kto potrafi programować w języku C/C++ i ew. w Arduino.
    Misja do wykonania wygląda następująco.
    Projekt: Centralka alarmowa, służąca do kontrolowania jednego pomieszczenia (ilość drzwi: 1)
    Chciałbym oprogramować µ-kontroler Atmega328P (na płytce Arduino UNO R3), w ten sposób, by program został napisany w języku C, i później skompilowany do Arduino (i ew. przetłumaczony, jeśli było by to potrzebne).
    Dodam, iż jestem świeżakiem w branży programowania i nie znam się na tym na tyle, by poczynić program, którego funkcjonalność zaraz szerzej opiszę.



    Centralka alarmowa:

    1) SKŁAD ELEMENTÓW:
    ^okablowanie
    ^Zasilacz z wewnętrznym akumulatorkiem, zapewniającym zasilanie po wyłączeniu prądu AC)
    ^ indukcyjny czujnik ruchu lub kontaktron, (montowany w wewnętrznej części drzwi. (aktywuje się po otwarciu drzwi)
    ^sygnalizator optyczny (pasek czerwonych diod LED), [Sopt]
    ^sygnalizator akustyczny (syrena z alarmu samochodowego) [Saku]
    ^moduł arduino UNO R3
    ^ czujka ruchu (ze stykiem anty sabotażowym) [Cruh]
    ^ dioda mocy LED (czerwona 1W, zasilana napięciem 1,8-3V). [Lled]
    ^przycisk do załączania, który będzie ukryty (nie trzeba będzie go oprogramować) [Pzal]
    ^przycisk do uzbrojenia i uśpienia alarmu (mogą być 2 różne, lub ten sam, ew. przełącznik dźwigienkowy) -
    ten też będzie ukryty w tle, lub zamaskowany. [Pusp i Pcuw]
    ^ przycisk do restartu (sprawia, że dioda Led nie świeci ciągle, tylko mruga co 2 sekundy) {Prst}
    * proszę dopisać, jeśli coś będzie potrzebne ponad to



    2) ZASADA FUNKCJONALNOŚCI:

    Układ na być ciągle zasilany. Może znajdować się w 3-ech stanach:
    I. Uśpienia
    II. Czuwania
    II'. Alarmu.
    III. Naruszenia



    ! NA CZYM POLEGA DZIAŁANIE W KAŻDYM ZE STANÓW:

    I. czujniki mogą być aktywne, ale centralka to ignoruje. Dioda Led 1W - nie świeci, sygnalizatory są wyłączone.

    II. czujki są aktywne, centrala reaguje na to po 10 sekundowym opóźnieniu, Dioda Led miga cyklicznie (5 s nie świeci, 1 s świeci).

    Sygnalizatory wyłączone.

    II'. Dioda LED świeci ciągłym światłem, syg, opt miga cyklicznie (2 sek świeci, 2 sek nie), syg aku jest aktywny ciągle (syrena wyje)

    III. Układ działa tak jak w trybie czuwania, z tą różnicą, że dioda LED świeci światłem ciągłym, do momentu, aż układ zostanie zrestartowany przyciskiem (Prst)



    Działanie:
    Pierwsze uruchomienie, lub przywrócenie zasilania:
    Po załączeniu zasilania, licznik (timer) rusza i odlicza CZAS NA DECYZJĘ PO URUCHOMIENIU = 30 SEKUND.
    Po tym czasie, układ uzbraja się (przechodzi w stan czuwania). Dla t>30 s
    Przed tym czasem (dla t=<30 s), możliwe jest załączenie trybu Uśpienia.

    Jak załącza się tryb alarmu i ile trwa:
    Gdy UKŁAD ZNAJDUJE SIĘ W STANIE CZUWANIA i pojawi się impuls na czujniku indukcyjnym lub/i czujce ruchu, centralka ma uruchomić licznik CZASU NA WEJŚCIE = 10 s i uruchomić ALARM po tym czasie, JEŻELI NIE ZOSTANIE WŁĄCZONY TRYB UŚPIENIA szybciej niż w 10 sekund.
    CZAS TRWANIA ALARMU: ustawiony cyklicznie: 180 s-Alarm, 30 s- Przerwa, 120 s-Alarm, 30 s przerwa, 60 s- A i wyłaczenie alarmu (układ przechodzi w tryb czuwania, ale dioda LED

    Jak załączyć tryb czuwania:
    Włączyć zasilanie i poczekać 30 sekund, lub przyciskiem (Pcuw), JEŻELI CENTRALA JEST W STANIE UŚPIENIA.

    Jak uruchomić tryb uśpienia:
    Naciskając przycisk (Pusp) w czasie =<10s w przypadku aktywowania czujników (syt. gdy wchodzimy)
    lub =<30s licząc od momentu włączenia zasilania.



    ! chciałbym, aby układ posiadał możliwość rozbudowy o taką rzecz, jak wysyłanie wiadomości SMS z telefonu, lub zadzwonienie, w przypadku załączenia alarmu.
    (wyglądało by to tak,
    że stale podłączony do zasilania, stary telefon komórkowy, np legendarna nokia, lub motorolla, jest połączony jakąś linią do arduino i po pojawieniu się stanu wysokiego np.: na syg. akustycznym, została by wykonana interakcja w postaci SMS lub wykonania połączenia)



    Jeżeli ktoś podjąłby się napisania takiego programu, będę bardzo wdzięczny!
    Mile widziane komentarze, przy funkcjach realizowanych przez program.
    (Wówczas mógłbym się czegoś nauczyć po zapoznaniu się z kodem)


    Z góry dziękuję za wszelkie wskazówki !
    Pozdrawiam gorąco.
    Do you have a problem with Arduino? Ask question. Visit our forum Arduino.
  • Optex
  • #2
    szwagros
    Level 33  
    Czego właściwie oczekujesz?
    Arsenek-galu wrote:
    Jeżeli ktoś podjąłby się napisania takiego programu, będę bardzo wdzięczny!

    Jak bardzo? Tzn jaki jest budżet na to zlecenie?
    Arsenek-galu wrote:
    Z góry dziękuję za wszelkie wskazówki !

    Zacznij raczej od migania ledem.
  • Optex
  • #3
    mpier
    Level 28  
    Witam,
    Arsenek-galu wrote:
    Projekt mojego autorstwa: Centralka alarmowa, służąca do kontrolowania jednego pomieszczenia (ilość drzwi: 1)
    Pierwszych trzech słów nie rozumiem, reszta wydaje się raczej jasna. Jeśli komuś się nudzi to taką zabawkę zrobi koledze hobbystycznie do 2000zł myślę.
    Arsenek-galu wrote:
    Mile widziane komentarze, przy funkcjach realizowanych przez program.
    (Wówczas mógłbym się czegoś nauczyć po zapoznaniu się z kodem)
    To tak nie działa.
  • #4
    Arsenek-galu
    Level 3  
    szwagros wrote:

    Zacznij raczej od migania ledem.


    Dobrze, tak zrobię.
  • Helpful post
    #5
    jox1
    Level 13  
    Witaj kolego Arsenek-galu

    Ty pisząc /////Chciałbym uzyskać pomoc/// i resztę twoich oczekiwani.

    Rozumiem że oczekujesz tego aby

    Dostarczyć ci schemat ideowy ?
    Kod programu z opisem celem edycji ?
    Gotowy prototyp ?

    Jeżeli tak to po prostu napisz ile za gotowca i po sprawie.

    No chyba że się mylę i już masz .

    Kawałek schematu , kodu ??
    W takim razie opublikuj i wtedy może ktoś cie wesprze.

    Polecam też Google

    to na początek
    https://www.instructables.com/Arduino-Home-Security-System/
  • #6
    Arsenek-galu
    Level 3  
    Witam !
    Kolego jox1
    jox1 wrote:

    O coś takiego mi chodzi, ale znacznie mniej rozbudowane (bez manipulatora, wyświetlacza, kamerki, serwo mechanizmu i nie tylko).
    Schemat elektryczny sam ogarnę i wykonanie (fizyczne) także, ale programowego - NIE.
    Potrzebowałbym sam program (oczywiście z opisem wykorzystanych pinów, bym wiedział co gdzie podłączyć).
  • #8
    Arsenek-galu
    Level 3  
    Kolego jox1 - Dziękuję bardzo za zamieszczone materiały.!
    Są przydatne i pomocne.

    Póki co, stanąłem na przesyłaniu danych z komputera do Arduino poprzez port szeregowy USB.
    Próbowałem paru rozwiązań, ale dane nie chcą się przesyłać.
    Może poprzedni użytkownik tej płytki Arduino, usunął bootloader poprzez port ISCP.
    Ogarnę jakiś dodatkowy programator, sformatuję Atmegę 16 oraz ponownie wgram bootloader, może to zadziała !