sterownik serva elm-chan

Dyskusje dotyczące serwonapędów i napędów serwokrokowych.

kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#71

Post napisał: kamilkamil1 » 10 cze 2010, 18:12

Na pewno nie nagle, musiało być coś nie tak na płytce. Inwerter stosuje 7414 i za tym tranzystor. Chciałbym nie dokładać jeszcze dodatkowych układów tylko zastosować jeden np. 4010 ale ma za małą wydajność prądową.
Gdyby chodziło o samą inwersje to chyba lepszym rozwiązaniem byłaby zamiana programowa.
Zgadza się to było by najlepsze rozwiązanie ale nie jestem w stanie zmienić kodu. Czy mogę liczyć na pomoc w tej sprawie ?



Tagi:


Leoo
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 10
Posty: 4017
Rejestracja: 15 lis 2006, 22:01
Lokalizacja: Tarnobrzeg

#72

Post napisał: Leoo » 10 cze 2010, 19:30

Większość gatedriverów IR posiada wejścia kompatybilne ze standardem TTL. Niestety IR2111 nie należy do tej większości, dla tego trzeba stosować bufor na tranzystorze lub bramkę z wyjściem OC np. 7407.
Poprawne działanie ograniczenia prądowego wymaga użycia "zatrzasku" tj. przerzutnika typu D np. 7474, 4013 itp. Jak znajdę chwilę, to coś nakreślę.


kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#73

Post napisał: kamilkamil1 » 11 cze 2010, 11:52

Witam próbuje skompilować program z asemblera do hex ale wyskakuje mi błędy. Nie jestem znawcą asemblera więc proszę o pomoc w tej sprawie. Szukałem w internecie i znalazłem parę informacji prosił bym o weryfikacje.
Edytowałem plik m8def.inc i dodałem
.equ USR = UCSRA
.equ USR = UCSRB
.equ WDTCSR = WDTCR
.equ E2END =$01ff

Błędy
out WDTCSR, r16
out WDTCSR, r16
sbi UCR, RXCIE
cpi r16, (E2END+1)/N_PARM/2
cpi r16, (E2END+1)/N_PARM/2

Zmieniłem również PWM "stan low" na "stan high" resztę pozostawiłem bez zmian. Czy to będzie prawidłowo działać?
ldi r16,0b11110001
out TCCR1A, r16


Autor tematu
etet100
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 33
Posty: 569
Rejestracja: 24 lut 2008, 12:40
Lokalizacja: Rybnik
Kontakt:

#74

Post napisał: etet100 » 11 cze 2010, 18:31

Witam próbuje skompilować program z asemblera do hex ale wyskakuje mi błędy. Nie jestem znawcą asemblera więc proszę o pomoc w tej sprawie. Szukałem w internecie i znalazłem parę informacji prosił bym o weryfikacje.
Edytowałem plik m8def.inc i dodałem
.equ USR = UCSRA
.equ USR = UCSRB
.equ WDTCSR = WDTCR
.equ E2END =$01ff
Po co ? Zmieniasz wersje procesora czy co ? Wszystkie źródła jakie znalazłem kompilują się bez problemu. Do 88 polecam wersje http://brak-tu-sensu.pl/upload/AtMega88_3_3.asm

To jest wersja CompInt. Jeżeli używasz tych TimerInt to możliwe, że się na nadaje.
Zmieniłem również PWM "stan low" na "stan high" resztę pozostawiłem bez zmian. Czy to będzie prawidłowo działać?
ldi r16,0b11110001
out TCCR1A, r16
Teoretycznie tak. Próbowałem u siebie i efekt jest taki: na IR2184 mam przebiegi,
urządzenie nie działa. Gdyby przyjąć, że ten sygnał nie może być zanegowany to
możliwe, że u ciebie ruszy. Jak będe miał chwilę to sprawdzę czy zadziała jak
zastosuje u siebie negację.

tu skompilowane: http://brak-tu-sensu.pl/upload/AtMega88_3_3.hex


kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#75

Post napisał: kamilkamil1 » 11 cze 2010, 20:18

W czym kolega kompiluje ? Ja dopiero pierwszy raz kompilowałem w AVR Studio4 i wyskoczyły te błędy. Ja w swoim projekcie używam Atmegi8. Czy może kolega opisać jak to kompiluje, co jest potrzebne?, chętnie bym się douczył.


Autor tematu
etet100
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 33
Posty: 569
Rejestracja: 24 lut 2008, 12:40
Lokalizacja: Rybnik
Kontakt:

#76

Post napisał: etet100 » 11 cze 2010, 20:53

W czym kolega kompiluje ? Ja dopiero pierwszy raz kompilowałem w AVR Studio4 i wyskoczyły te błędy.

Ja w swoim projekcie używam Atmegi8. Czy może kolega opisać jak to kompiluje, co jest potrzebne?, chętnie bym się douczył.
AVR Studio. Znajdz w takim razie źródła pod ATMEGA8 bo różnice między 8 i 88 się podejrzewam na nazwach rejestrów nie kończą. A te źródła sądzać po nazwach rejestrów to z ATMEGA88.

Przy właściwych źródłach nic nie trzeba robić: ładujesz projekt, zmieniasz co tam trzeba i kompilujesz.


kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#77

Post napisał: kamilkamil1 » 11 cze 2010, 22:21

AVR Studio. Znajdz w takim razie źródła pod ATMEGA8 bo różnice między 8 i 88 się podejrzewam na nazwach rejestrów nie kończą. A te źródła sądzać po nazwach rejestrów to z ATMEGA88.

Przy właściwych źródłach nic nie trzeba robić: ładujesz projekt, zmieniasz co tam trzeba i kompilujesz.
Próbowałem skompilować plik z m88 ale też wywala błędy nie wiem co robię źle. Pozmieniałem to o czym pisałem wcześniej skompilowałem pod m8 wgrałem do procka i działa, ale nie wiem czy tak można ?


Autor tematu
etet100
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 33
Posty: 569
Rejestracja: 24 lut 2008, 12:40
Lokalizacja: Rybnik
Kontakt:

#78

Post napisał: etet100 » 11 cze 2010, 22:50

kamilkamil1 pisze:
AVR Studio. Znajdz w takim razie źródła pod ATMEGA8 bo różnice między 8 i 88 się podejrzewam na nazwach rejestrów nie kończą. A te źródła sądzać po nazwach rejestrów to z ATMEGA88.

Przy właściwych źródłach nic nie trzeba robić: ładujesz projekt, zmieniasz co tam trzeba i kompilujesz.
Próbowałem skompilować plik z m88 ale też wywala błędy nie wiem co robię źle. Pozmieniałem to o czym pisałem wcześniej skompilowałem pod m8 wgrałem do procka i działa, ale nie wiem czy tak można ?
Nie wiem skąd błędy przy kompilacji. Jeżeli napiszesz które konkretnie źródła pod MEGA8 się nie kompilują to spróbuję u siebie.

Ta negacja pwd działa ? Po wywaleniu inwerterów pracuje prawidłowo ?

Jeżeli wszystko działa to dobrze. W końcu to bardzo podobne układy i może te kilka zmian wystarczy. Chociaż u mnie nie wystarczyło ale też za długo nad tym nie siedziałem.


kamilkamil1
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 38
Posty: 62
Rejestracja: 12 mar 2009, 16:53
Lokalizacja: Sandomierz

#79

Post napisał: kamilkamil1 » 12 cze 2010, 11:24

Witam, załączam pliki z wsadami które się nie kompilują. Po wywaleniu inwerterów działa prawidłowo.
Załączniki
flash.rar
(24.18 KiB) Pobrany 519 razy


Autor tematu
etet100
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 33
Posty: 569
Rejestracja: 24 lut 2008, 12:40
Lokalizacja: Rybnik
Kontakt:

#80

Post napisał: etet100 » 12 cze 2010, 11:36

kamilkamil1 pisze:Witam, załączam pliki z wsadami które się nie kompilują. Po wywaleniu inwerterów działa prawidłowo.
Servo_AtMega_CompInt.asm

Assembly complete, 0 errors. 0 warnings

Może coś w ustawieniach AVR Studio masz nie tak. U mnie
wszystko jest ustawione domyślnie.

Skompilowany:

http://brak-tu-sensu.pl/upload/a1.hex

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Serwomotory / Serwonapędy / Napędy Serwokrokowe”