Strona 1 z 2

Oświetlenie sterowane dżwiękiem.

: poniedziałek 04 wrz 2017, 20:21
autor: luzik
Chciałbym sobie zafundować w mojej wędkarskiej przyczepie taki patent jak na tym filmie
https://www.youtube.com/watch?v=iEbB0xUqj1A
Inaczej mówiąc dżwięk centralki sygnalizującej branie ryby - włącza oświetlenie w przyczepce.
Szczegółów tego systemu nigdzie nie znalazłem ale myślę sobie tak, że może udałoby się wykorzystać taki np. patent czujnik hałasu/dzwięku
Czy ktoś z kolegów pomógł by mi w wykonaniu takiego patentu bo z Arduino nie miałem do czynienia do tej pory, a podejrzewam, że na tym się to opiera.
Wydaje mi się, że sam mikrofon powinien być w wykonaniu tego urządzenia blisko głośnika centralki by reagował tylko na jej dżwięk (moc dżwięku) nie uruchamiając urządzenia przez inne słabsze dżwięki w tle jak tutaj https://www.facebook.com/scaleybackspow ... =2&theater
Oczywiście system działał by tylko w nocy.

: poniedziałek 04 wrz 2017, 21:30
autor: ptja
Podaj szczegóły tej "centralki".

: poniedziałek 04 wrz 2017, 21:36
autor: luzik

: poniedziałek 04 wrz 2017, 21:44
autor: ptja
Widzę, że komunikują się radiowo (BT), może ten sygnał da się odczytać? Smartfon "widzi" to urządzenie?

: poniedziałek 04 wrz 2017, 21:48
autor: luzik
BT to dodatkowa funkcja. Komunikacja radiowa, ale nie znam częstotliwości na jakiej pracuje. Po włączeniu BT i użyciu aplikacji może współpracować ze smartfonem. https://play.google.com/store/apps/deta ... etoothfish

edit 1:

Znalazłem jeszcze takie dwa filmy ale nie kumam anglijskiego bo może bym coś zaczaił...

https://www.youtube.com/watch?v=dx6gK7kB1iM

https://www.youtube.com/watch?v=PCglvv8 ... e=youtu.be

edit 2 :

Z pomocą kolegi ptja - zaopatrzyłem się w niezbędne akcesoria i wstępnie podłączyłem te wszystkie klocki w sposób jak na fotkach niżej - bazując na tym samouczku http://henrysbench.capnfatz.com/henrys- ... er-manual/ również wskazanym przez cytowanego wyżej kolegę.

Z informacji jakie otrzymałem wiem, że programowanie jest możliwe przez gniazdo USB bez użycia programatora. W takim razie co mam wybrać w tej zakładce?? Ja zaznaczyłem tak na czuja Arduino as ISP ale nie wiem czy tak ma być jeśli nie używam żadnego programatora.

Obrazek

Rozumiem, że powinno to być połączone tak jak na fotkach.
Obrazek

Obrazek

Obrazek


Jeżeli widzicie koledzy jakieś błędy - proszę o ich wskazanie. Docelowo chcę zasilać całość poprzez moduł step-down z 5V stabilizowanym napięciem.

Rozumiem że do testu czy wszystko działa jak trzeba mogę zasilić całość z kabelka USB z kompa ( kabelków GND i 5V nie podpinam wtedy bo by było podwójne zasilanie) One będą podawać napięcie już po sprawdzeniu układu w finalnym podłączeniu. Czy dobrze kombinuję?

Nie wiem jeszcze gdzie powinienem się wpiąć z listwą LED ( czy mam wpiąć w pin 10 gdzie dochodzi sygnał pod wolne piny G i V ? Czy G to masa a V to plus ? )
Będę wdzięczny za wskazówki i pomoc w temacie!

: poniedziałek 11 wrz 2017, 12:59
autor: ptja
Listwę LED wpinasz przez przekaźnik. Na razie spokojnie możesz programować używając LED na płytce jako symulatora oświetlenia (użyj stałej BUILTIN_LED przy definiowaniu linii jako wyjście i przy jej sterowaniu), a potem podłączysz przekaźnik do D13 i powinno działać bez zmian.

Do programowania i testów wystarczy zasilanie z USB.

Zaglądałeś na stronę Arduino Nano?

: poniedziałek 11 wrz 2017, 13:16
autor: luzik
Zaznaczyłem jako programator Arduino as ISP.
Na stronę Arduino Nano zaglądałem i kontrolnie wgrałem sobie Blink i wygląda na to, że programowanie poszło ok bo dioda L mrugała. Następnie rzuciłem też jeszcze raz ten sketch jaki mi wskazałeś na PW i chyba poszło również jak trzeba bo nie wywaliło mi żadnych błędów. Poniżej to co mi się wyświetliło po sprawdzeniu i po wgraniu...

C:\Program Files\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files\Arduino\hardware -tools C:\Program Files\Arduino\tools-builder -tools C:\Program Files\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files\Arduino\libraries -libraries C:\Users\AS\Documents\Arduino\libraries -fqbn=arduino:avr:nano:cpu=atmega328 -ide-version=10804 -build-path C:\Users\AS\AppData\Local\Temp\arduino_build_389810 -warnings=none -build-cache C:\Users\AS\AppData\Local\Temp\arduino_cache_820943 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files\Arduino\hardware\tools\avr -verbose C:\Users\AS\Documents\Arduino\sketch_sep06a\sketch_sep06a.ino
C:\Program Files\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files\Arduino\hardware -tools C:\Program Files\Arduino\tools-builder -tools C:\Program Files\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files\Arduino\libraries -libraries C:\Users\AS\Documents\Arduino\libraries -fqbn=arduino:avr:nano:cpu=atmega328 -ide-version=10804 -build-path C:\Users\AS\AppData\Local\Temp\arduino_build_389810 -warnings=none -build-cache C:\Users\AS\AppData\Local\Temp\arduino_cache_820943 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files\Arduino\hardware\tools\avr -verbose C:\Users\AS\Documents\Arduino\sketch_sep06a\sketch_sep06a.ino
Using board 'nano' from platform in folder: C:\Program Files\Arduino\hardware\arduino\avr
Using core 'arduino' from platform in folder: C:\Program Files\Arduino\hardware\arduino\avr
Detecting libraries used...
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "C:\Users\AS\AppData\Local\Temp\arduino_build_389810\sketch\sketch_sep06a.ino.cpp" -o "nul"
Generating function prototypes...
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "C:\Users\AS\AppData\Local\Temp\arduino_build_389810\sketch\sketch_sep06a.ino.cpp" -o "C:\Users\AS\AppData\Local\Temp\arduino_build_389810\preproc\ctags_target_for_gcc_minus_e.cpp"
"C:\Program Files\Arduino\tools-builder\ctags\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\Users\AS\AppData\Local\Temp\arduino_build_389810\preproc\ctags_target_for_gcc_minus_e.cpp"
Kompilowanie szkicu...
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "C:\Users\AS\AppData\Local\Temp\arduino_build_389810\sketch\sketch_sep06a.ino.cpp" -o "C:\Users\AS\AppData\Local\Temp\arduino_build_389810\sketch\sketch_sep06a.ino.cpp.o"
Compiling libraries...
Compiling core...
Using precompiled core
Linking everything together...
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-gcc" -w -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\Users\AS\AppData\Local\Temp\arduino_build_389810/sketch_sep06a.ino.elf" "C:\Users\AS\AppData\Local\Temp\arduino_build_389810\sketch\sketch_sep06a.ino.cpp.o" "C:\Users\AS\AppData\Local\Temp\arduino_build_389810/..\arduino_cache_820943\core\core_arduino_avr_nano_cpu_atmega328_5638c217b04eda8279099c4937887265.a" "-LC:\Users\AS\AppData\Local\Temp\arduino_build_389810" -lm
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 "C:\Users\AS\AppData\Local\Temp\arduino_build_389810/sketch_sep06a.ino.elf" "C:\Users\AS\AppData\Local\Temp\arduino_build_389810/sketch_sep06a.ino.eep"
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -R .eeprom "C:\Users\AS\AppData\Local\Temp\arduino_build_389810/sketch_sep06a.ino.elf" "C:\Users\AS\AppData\Local\Temp\arduino_build_389810/sketch_sep06a.ino.hex"
Szkic używa 1978 bajtów (6%) pamięci programu. Maksimum to 30720 bajtów.
Zmienne globalne używają 211 bajtów (10%) pamięci dynamicznej, pozostawiając 1837 bajtów dla zmiennych lokalnych. Maksimum to 2048 bajtów.

Piszesz:... użyj stałej BUILTIN_LED przy definiowaniu linii jako wyjście i przy jej sterowaniu... ale nie wiem gdzie konkretnie go umieścić? Domyślam się, że chodzi o jakąś linijkę w sketchu? Nie kumam za bardzo gdzie to wpisać/zamienić :roll: ? :oops:
:oops:
Znalazłem w necie taki tekst:
  • Definiowanie wbudowanych elementów: LED_BUILTIN

    Większość płyt Arduino posiada pin podłączony do wbudowanej diody LED w szereg z rezystorem. Stałą LED_BUILTIN jest liczba pin, do którego podłączona jest dioda LED na pokładzie. Większość płyt ma tę diodę LED podłączoną do cyfr 13.
Z tego by wynikało, że nic nie muszę wpisywać zmieniać - czy się mylę?

Czyli wystarczy do próby wpiąć przewód OUT z czujnika dżwięku do pinu 10 pod S jak na fotce ten brążowy kabelek i zasilić czujnik dżwięku i powinno działać jak rozumiem i dioda L na płytce Nano będzie sygnalizować czy działa czy nie?

Obrazek

Są 3 piny: S,V, G W który/które mam się wpiąć by podać sygnał na przekażnik ?

: poniedziałek 11 wrz 2017, 14:48
autor: ptja
OK, czyli hardware działa.
Teraz napisz program, który wykryje stan "hałas" na którejś linii wejściowej (np. D4) i przez określony czas utrzyma stan aktywny (pewnie wysoki) na wyjściu D13 (zamiast używania numeru linii, czyli 13 możesz używać stałej LED_BUILTIN, co daje pewność, że zadziała to na różnych płytkach).

: poniedziałek 11 wrz 2017, 14:55
autor: luzik
Jarku! Nie żartuj sobie ze mnie! Ja stary cap, który nie dotykał tego tematu nigdy w życiu mam napisać taki program?? Nie mam o tym zielonego pojęcia! Nie ma szans żebym coś takiego stworzył :-( :( :| A czy ten program z tej strony http://henrysbench.capnfatz.com/henrys- ... er-manual/ jest niewłaściwy?
Nie będę używał innych płytek oprócz tej którą mam.
Jeżeli jest ktoś ( może TY) - kto mógłby coś takiego dla mnie zrobić będę wdzięczny. Nie ma sensu, żebym się uczył od zera tego programowania i pisania skoro tylko ja tego będę używał i w ten określony przeze mnie sposób.
No i nadal nie wiem czy tak to ma być podłączone jak pisałem... Tutaj sygnał leci żółtym do S no i zasilanie z shield do płytki dżwiękowej.

Obrazek

: poniedziałek 11 wrz 2017, 15:43
autor: ptja
luzik pisze:Jarku! Nie żartuj sobie ze mnie! Ja stary cap, który nie dotykał tego tematu nigdy w życiu mam napisać taki program??
Tak. Każdy kiedyś zaczynał, a to zadanie nie jest najbardziej skomplikowane w historii informatyki stosowanej.
luzik pisze:A czy ten program /.../ jest niewłaściwy?
to zależy, co rozumiemy przez "właściwy". To klocek, który możesz połączyć z innymi (np. odmierzaniem czasu i sterowaniem przekaźnikiem), żeby zrobić to, co jest Ci potrzebne.
luzik pisze: Nie będę używał innych płytek oprócz tej którą mam.
To wystarczy: arduino, detektor dźwięku i przekaźnik.
luzik pisze: No i nadal nie wiem czy tak to ma być podłączone jak pisałem... Tutaj sygnał leci żółtym do S no i zasilanie z shield do płytki dżwiękowej.
S - signal (połaczone z linią procesora), G - gnd (masa), V - Vcc (plus zasilania 5V). Twoje połączenie wydaje się OK (5V i gnd przy sygnałach Rx i Tx to to samo).

: poniedziałek 11 wrz 2017, 15:55
autor: luzik
ptja pisze: Tak. Każdy kiedyś zaczynał, a to zadanie nie jest najbardziej skomplikowane w historii informatyki stosowanej.
Może i nie jest, ale chyba jednak nie na moje siły :zalamany:

Bardzo dziękuję za dotychczasową pomoc.

edit: Trochę szukałem i znalazłem na youtube https://www.youtube.com/watch?v=S8igKAfgmIA&t=150s
taki opis i program tyle, że na Leonardo i wgrałem. Podmieniłem wartości dla mikrofonu i diody na 4 i 13. Żaden błąd nie wyskoczył. Czy będzie ok?

int mic = 4;
int lamp = 13;
boolean lastMic = LOW;
boolean nowMic = LOW;
boolean lampON = false;
void setup () {
pinMode(mic, INPUT);
pinMode (lamp, OUTPUT);
}
void loop () {
nowMic = digitalRead(mic);
if (lastMic == LOW && nowMic == HIGH)
{
lampON = !lampON;
} lastMic = nowMic;
digitalWrite (lamp, lampON);
}

Dorzucam też szkic jaki zrobiłem. Nie bardzo wiem jak podłączyć pod przekażnik listwę LED
Te strzałki w dół od VCC i GND w module przekażnika oznaczają podłączenie do aku 12V

: wtorek 12 wrz 2017, 11:23
autor: Marcin S.
Ma szansę zadziałać, ale raczej nie tak jak chcesz :) Po wykryciu dźwięku włączy lampę i pozostanie tak do kolejnego wykrycia dźwięku. Czyli taki włącznik na klaśnięcie.

Pzdr.
M.

: wtorek 12 wrz 2017, 11:27
autor: luzik
A czy byłbyś w stanie mi pomóc i tak zmodyfikować program by działał zgodnie z założeniami? Naprawdę nie kumam tego...

: wtorek 12 wrz 2017, 13:12
autor: ptja

: wtorek 12 wrz 2017, 13:22
autor: luzik
Zerknąłem, ale nadal nie wiem co z tym zrobić. Przepisać i wgrać? Modyfikować ale co i jak?