ATNEL tech-forum
https://forum.atnel.pl/

Pilot podczerwieni nietypowy problem
https://forum.atnel.pl/topic21167.html
Strona 1 z 1

Autor:  McsQ [ 23 sie 2018, o 11:33 ]
Tytuł:  Pilot podczerwieni nietypowy problem

Wita serdecznie :)
Postanowiłem ostatnio zrobić drobne sterowanie na podczerwień .
Pilot 4 przyciski (Attetiny2313), odbiornik podstawowe funkcję coś włącz coś wyłącz (Atmega32).
Przechodzę do tworzenia podstaw komunikacji , pilot na płytce stykowej i odbiornik testowy na zestawie ATB .
Wykorzystuje kody z Niebieskiej Książki.

Gdy już wszystko podłączyłem , kod został przepisany i zmodernizowany do pinów próbujemy.
Fajnie wszystko działa myślę sprawdzę zasięg pilota , podpinam baterie no i coś jednak tak fajnie nie działa szukam kombinuje
filtrowania są , napięcia się zgadzają , wszystko łączy .
Po kilkudziesięciu minutach coś znalazłem wpinam programator wszystko działa nie ważne z czego podpinam zasilanie lecz gdy odłączę linie programatora program się nie wykonuje.

Reset podciągnięty R10k . Wpinam MISO/MOSI/SCK wszystko działa .
Odłączam programator od USB sprawdzam pilot dalej nadaje.
Odpinam kabel KANDA od programatora (wiec w Attetiny zostają już tylko 3 przewody z KANDA (MISO/MOSI/SCK)
reset jest zewnętrznie podciągnięty i zasilanie z zasilacza regulowanego. Pilot dalej działa choć nie za każdym razem
Odpinam (MISO,MOSI,SCK) i nie działa wcale .

Kabel KANDA niema zwarć , sprawdzałem na dwóch uC i przez dwa programatory i sytuacja jest ta sama ,
wejścia przycisków przerzuciłem na inne piny żeby nie kolidowały z liniami programatora ale problem nie znikł.

Nigdy mi się taka sytuacja nie zdarzyła zawsze wszystko się wgrywało odpinałem programator i wszystko śmiga .
Może coś przeoczyłem , Jeśli ktoś miał podobna sytuację lub ma jakiś pomysł co jest nie tak
będę bardzo wdzięczny za wszystkie podpowiedzi . :)

Autor:  micky [ 23 sie 2018, o 11:53 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

Przede wszystkim to wstaw zdjęcia i na nich krótko opisz - typu "czasami działa", "nie działa" itd., będzie to dużo bardziej czytelne oraz pozwoli wyłapać problemy (jeśli są) z Twoim fizycznym układem.

Autor:  McsQ [ 23 sie 2018, o 14:17 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

Proszę bardzo poniżej podsyłam zdjęcia i schemat w eaglu

Obrazek

tak nie działa

Obrazek

1- diody z rezystorami podpięte do VCC
2- tranzystor PNP i rezystor 2,2k
3-reset z programatora
4-wtyczka z SPI (MOSI/MISO/SCK) "teraz wypięta i układ nie działa"


a tu 2 zdjęcie gdy wtyczka wpięta i układ działa
Obrazek

Autor:  mirekk36 [ 23 sie 2018, o 14:49 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

McsQ napisał(a):
4-wtyczka z SPI (MOSI/MISO/SCK) "teraz wypięta i układ nie działa"

a we wtyczce kanda masz tylko te trzy sygnały ? nie mylisz się? o resecie zapomniałeś ? a zasilanie ?

masz gdzieś masy porozłączane albo pozwierane jakieś sygnały

McsQ napisał(a):
2- tranzystor PNP i rezystor 2,2k

a na schemacie masz NPN

Autor:  xentis [ 23 sie 2018, o 16:26 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

Powiem Ci tak - na stykówce niestety tak będzie. I nie mówię tego złośliwie lub by negować stykówki. Też kiedyś się bawiłem projektem pilota (ten z BB) i niestety na stykówce trzeba było nieco kod zmodyfikować by dobrze działało. Powodem są prawdopodobnie pojemności jakie wprowadza sama stykówka (pomijam już kwestię słabego kontaktowania połączeń jakie zazwyczaj występuje na stykówkach). Gdy przyciskasz przycisk, procek się wybudza i natychmiast zmienia konfigurację pinów, a następnie bada który przycisk jest wciśnięty. I niestety pojemności jakie wprowadza stykówka powodują że gdy procek zaczyna badać który przycisk jest wciśnięty, to stany na tych pinach nie są jeszcze ustalone. Dodanie odpowiednich opóźnień w programie załatwia sprawę.
Powyższe jest jedynie moją dedukcją którą wywnioskowałem na podstawie obserwacji i doświadczeń ze zmianami w kodzie, więc nie gwarantuję głową że na 100% to jest przyczyną, ale dodane opóźnienia spowodowały że układ zaczął działać stabilnie.
Ten sam układ zmontowany na zaprojektowanej płytce PCB działa beż żadnych opóźnień bezbłędnie.

Autor:  McsQ [ 23 sie 2018, o 19:29 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

Przepraszam za błąd w schemacie faktycznie schemat jest od NPN moja wina .
Dziękuję wszystkim za podpowiedzi.
Jutro z rana wstanę rozmontuje układ i zrobię go jeszcze raz bardziej przejrzyście na krótkich przewodach w ostateczności zrobię pcb i dam znać czy się coś poprawiło

Autor:  McsQ [ 24 sie 2018, o 09:17 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

Rozłączyłem dzisiaj układ i pospinałem o wiele czytelniej (zdjęcie poniżej)
I dzisiaj myślałem już że błąd w kodzie wiec wgrałem orginał z książki i problem jest ten sam
ale coś zauważyłem.

Na zdjęciu widać czarny kabelek wiszący luzem jest on wpięty do PB6 co odpowiada w kodzie
KEY5 i gdy go dotknę palcem uC działa poprawnie lecz gdy wisi luzem już nie , podpinanie go przez rezystory do GND czy VCC nic nie daje wpięcie wszystkich 5 przycisków też nie pomaga .

A teraz najlepsze :) jak zmienię KEY5 np. na PB7 to już nie działa jak wcześniej tylko muszę dotknąć kabelek na PB7
haha

Obrazek

Autor:  mirekk36 [ 24 sie 2018, o 14:01 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

Wkładanie takich microswitchy przewlekanych w stykówkę - to po prostu ;) no nie obraź się ale - mistrzostwo świata, a na poważnie to nie dziw się, że raz ci styka wtedy a raz nie.

Autor:  xentis [ 24 sie 2018, o 17:15 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

McsQ napisał(a):
Rozłączyłem dzisiaj układ i pospinałem o wiele czytelniej
Pisałem CI już że nie w czytelności problem ale w samej stykówce.
Widziałeś kiedyś jak zbudowana jest stykówka w środku? Wzdłuż każdej kolumny są zagięte blaszki. Blaszki są poukładana równolegle a pomiędzy nimi jest izolator.
A znasz definicję budowy kondensatora? "Kondensator – element elektryczny (elektroniczny), zbudowany z dwóch przewodników (okładek) rozdzielonych dielektrykiem." (Źródło: wikipedia) Widzisz podobieństwo?
To teraz wyobraź sobie że pomiędzy nogami procesora są takie małe kondensatorki. Gdy wciskasz przycisk, który dodatkowo siedzi w stykówce na słowo honoru, procek się wybudza zmienia konfiguracje i stany na pinach i bez żadnego opóźnienia sprawdza czy jakikolwiek klawisz wciśnięty. Problem w tym że te kondensatorki pomiędzy pinami za które odpowiedzialna jest stykówka muszą zostać przeładowane - oczywiście ich pojemność jest mała i w związku z tym czas ich przeładowania jest niewielki ale procek jest taktowany jeśli dobrze pamiętam 8MHz więc pomiędzy zmianą stanu pinów a badaniem stanu przycisków odstęp jest na tyle mały że stan na tych pinach się nie zdąży ustalić więc program nie zauważy wciśniętego przycisku i procek wraca spać.
W moim programie z czasów testu wystarczyło dodać opóźnienie rzędu 1us (tak mam obecnie w projekcie zapisane ale nie dam głowy czy faktycznie była to już wartość przy której wszystko działało poprawnie - bawiłem się tym dawno temu) przed ifem sprawdzającym czy któryś przycisk wciśnięty i program wtedy działał poprawnie.
Więc albo zmodyfikuj program, albo zmontuj to na zaprojektowanej płytce PCB wtedy program zadziała w formie niezmienionej (ścieżki na płytce pcb mają grubość liczoną w mikrometrach więc nawet jak są poprowadzone równolegle do siebie to powierzchnie boczne dwóch sąsiednich ścieżek są znacznie mniejsze w porównaniu do powierzchni blaszek w stykówce więc i pojemności obwodu drukowanego są duużo mniejsze i w tym wypadku nie wpływa to na działanie programu).

Autor:  McsQ [ 24 sie 2018, o 20:38 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

Dobra xentis przekonałeś mnie ( i tak wiem co to kondensator :) ) ale pojemność stówki w sumie nie brałem pod uwagę za małe doświadczenie ale kto pyta nie błądzi . Zaprojektuje już całego pilota tak jak ma być skoro mówisz że ma działać postaram się zrobić w następnym tygodniu i zdać relację .

Autor:  mirekk36 [ 24 sie 2018, o 21:01 ]
Tytuł:  Re: Pilot podczerwieni nietypowy problem

Ja ci polecam zmontować sobie jakiś chociaż MINI własny zestawik uruchomieniowy do testów na jakimś procku - z kilkoma często używanymi peryferiami i porządnym zasilaniem, kilkoma klawiszami itp ... i na tym rób prototypy - a jak będą działać to wtedy bierz się za projektowanie płytki PCB - bo tą metodą stracisz mnóstwo czasu i pieniędzy - a i tak i tak - za jakiś czas stwierdzisz - że warto mieć nawet jakąś własną mini platformę uruchomieniową a nie zawsze wszystko na stykówce.

Strona 1 z 1 Strefa czasowa: UTC + 1
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/