www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

Enkoder in neskončni trak
Pojdi na stran 1, 2  Naslednja
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Merilna tehnika in senzorji
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Tincek
Član
Član



Pridružen-a: Tor 13 Dec 2011 9:49
Prispevkov: 12
Aktiv.: 0.07
Kraj: Dolina reke Idrijce....

PrispevekObjavljeno: Sre Apr 17, 2013 8:10 am    Naslov sporočila:  ABSOLUTNI ENKODER V "NESKONČNOSTI" Odgovori s citatom

Pozdravljeni.

Ali ima kdo kaj več izkušenj z absolutnim enkoderji?
Zadeva je jasna, če je gibanje motorja oz. orodja omejeno.

Kako je pa pri neskončnih trakovih?
Trak pomikamo naprej in naprej, naprej, ......
Enkrat pridemo z merilnim podrocjem čez.
In ko stroj ponovno vklopimo kaže absolutni enkoder negativno vrednost.
Kako vemo kako naprej, da se nam zadeva ne začne vrteti nazaj?

Hvala za kakšen moder nasvet!

_________________
Korajza velja!
Tincek
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
aly
Član
Član



Pridružen-a: Tor 28 Sep 2004 14:51
Prispevkov: 9407
Aktiv.: 39.61
Kraj: Kranj - struževo

PrispevekObjavljeno: Sre Apr 17, 2013 9:25 am    Naslov sporočila:   Odgovori s citatom

Če imaš absoluten enkoder, bo vedno kazal absolutno pozicijo traku, se pravi bo štel od nič do končne vrednosti ter skočil na nič in spet štel do končne vrednosti. Če bi to grafično narisal, bi dobil "žago".

Če pa imaš inkrementalni enkoder, bo pošiljal samo pulze. In je odvisno odštevca na strani uporabnika, kako bo intrepretiral vrednosti.

_________________
I'm going to stand outside, so if anyone asks, I'm outstanding Smile
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran MSN Messenger - naslov
igo
Član
Član



Pridružen-a: Sre 11 Okt 2006 19:11
Prispevkov: 3641
Aktiv.: 15.97

PrispevekObjavljeno: Sre Apr 17, 2013 12:26 pm    Naslov sporočila:   Odgovori s citatom

Absolutni enkoder vedno daje na izhodu n-bitno binarno vrednost.
Torej je preostanek stroja tisti, ki lahko to vrednost napačno interpretira.

Kolikšna je ta negativna vrednost? Je negativna le za par pozicij (trak po vklopu napajanja trzne malo nazaj), ali negativna vrednost odvisna od stanja najvišjega bita (v tem primeru je lahko precej velika)?

Se je negativnost začela pojavljati nenadoma pogosto, ali postopoma od občasnega vse bolj pogosto?

Je stroj kupljen in je na začetku pravilno deloval, ali se gre za nov stroj v fazi izdelave, ki se malo heca z vami?

_________________
Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Tincek
Član
Član



Pridružen-a: Tor 13 Dec 2011 9:49
Prispevkov: 12
Aktiv.: 0.07
Kraj: Dolina reke Idrijce....

PrispevekObjavljeno: Pet Apr 26, 2013 12:28 pm    Naslov sporočila:   Odgovori s citatom

aly je napisal/a:
Če imaš absoluten enkoder, bo vedno kazal absolutno pozicijo traku, se pravi bo štel od nič do končne vrednosti ter skočil na nič in spet štel do končne vrednosti. Če bi to grafično narisal, bi dobil "žago".

Če pa imaš inkrementalni enkoder, bo pošiljal samo pulze. In je odvisno odštevca na strani uporabnika, kako bo intrepretiral vrednosti.


Če bi bila žaga potem ne bi bilo negativnih vrednosti.

_________________
Korajza velja!
Tincek
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
red_mamba
Član
Član



Pridružen-a: Ned 20 Feb 2005 17:56
Prispevkov: 1486
Aktiv.: 6.26
Kraj: Yogyakarta

PrispevekObjavljeno: Pet Apr 26, 2013 12:39 pm    Naslov sporočila:   Odgovori s citatom

Tincek je napisal/a:
aly je napisal/a:
Če imaš absoluten enkoder, bo vedno kazal absolutno pozicijo traku, se pravi bo štel od nič do končne vrednosti ter skočil na nič in spet štel do končne vrednosti. Če bi to grafično narisal, bi dobil "žago".

Če pa imaš inkrementalni enkoder, bo pošiljal samo pulze. In je odvisno odštevca na strani uporabnika, kako bo intrepretiral vrednosti.


Če bi bila žaga potem ne bi bilo negativnih vrednosti.


odvisno ali se vrednosti interpretirajo kot signed ali unsigned Wink

_________________
Bad things happen to good people all the time for no reason!
Blog
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Tincek
Član
Član



Pridružen-a: Tor 13 Dec 2011 9:49
Prispevkov: 12
Aktiv.: 0.07
Kraj: Dolina reke Idrijce....

PrispevekObjavljeno: Pet Apr 26, 2013 12:40 pm    Naslov sporočila:   Odgovori s citatom

igo je napisal/a:
Absolutni enkoder vedno daje na izhodu n-bitno binarno vrednost.
Torej je preostanek stroja tisti, ki lahko to vrednost napačno interpretira.

Kolikšna je ta negativna vrednost? Je negativna le za par pozicij (trak po vklopu napajanja trzne malo nazaj), ali negativna vrednost odvisna od stanja najvišjega bita (v tem primeru je lahko precej velika)?

Se je negativnost začela pojavljati nenadoma pogosto, ali postopoma od občasnega vse bolj pogosto?

Je stroj kupljen in je na začetku pravilno deloval, ali se gre za nov stroj v fazi izdelave, ki se malo heca z vami?


Cisto odvisno koliko casa je stroj delal. Trak se je poganjal naprej.
Stroj smo naredili sami.
Pa pogon smo uporabili Festo servo motor.

Vrednosti pozici, ki jih dobim ob vklopu:
DB60.DBD 0 FLOATING_POINT 45485.14
DB60.DBD 4 FLOATING_POINT -22258.44
DB60.DBD 8 FLOATING_POINT 287661.4
DB60.DBD 12 FLOATING_POINT 110637.6
DB60.DBD 16 FLOATING_POINT 110637.6
DB60.DBD 20 FLOATING_POINT -129810.7
DB60.DBD 24 FLOATING_POINT -78290.86
DB60.DBD 28 FLOATING_POINT 49549.33
DB60.DBD 32 FLOATING_POINT -86418.75
DB60.DBD 36 FLOATING_POINT 94957.19
DB60.DBD 40 FLOATING_POINT 35373.24
DB60.DBD 44 FLOATING_POINT 130445.2
DB60.DBD 48 FLOATING_POINT 447725.2

_________________
Korajza velja!
Tincek
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
igo
Član
Član



Pridružen-a: Sre 11 Okt 2006 19:11
Prispevkov: 3641
Aktiv.: 15.97

PrispevekObjavljeno: Pet Apr 26, 2013 5:44 pm    Naslov sporočila:   Odgovori s citatom

Koliko bitov ima enkoder?
Ima paralelni ali serijski izhod?
Ali si ti pisal program za PLC? Če nisi, poskrbi za temeljit pogovor s piscem programe na temo interpretacije zajete vrednosti.

Prebrana vrednost iz enkoderja ne more in ne sme biti tipa Floating Point. Za do 16 bitov je dovolj Unsigned Long ali podoben absolutni nepredznačen format.

Kako to potem pretvoriš v Floating Point?
Prilepi tisti del programa in napiši tipe nastopajočih števil.

Če enkoder napravi cel krog (2^n) korakov, za koliko se mora spremeniti prikaz pozicije?
Kolikšna je maksimalna možna prikazana pozicija in glede na kaj se orientiraš (npr. fiksno pritrjeni predalčki na tekočem traku)?

Če iz PLC vsakič pošlješ na servo znano število impulzov, nato pa s PLC-jem bereš števec v servo gonilniku, moraš ta števec v gonilniku občasno tudi resetirati (glej datasheet od servo gonilnika, ker imajo to posamezne znamke različno narejeno).

Kateri PLC je uporabljen?

p.s.: Tokrat poskusi odgovoriti na več kot polovico zastavljenih vprašanj.

_________________
Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Energetik-m
Član
Član



Pridružen-a: Pon 07 Dec 2009 19:16
Prispevkov: 1392
Aktiv.: 7.34
Kraj: Zagorje

PrispevekObjavljeno: Pet Apr 26, 2013 7:24 pm    Naslov sporočila:   Odgovori s citatom

Glede na sintakso sklepam, da gre za simatic. Njegov floating point ima 32 bitov, od tega je 1 bit za predznak , 8 bitov za eksponent in 23 bitov za mantiso.
Teh 23 bitov za mantiso pa pomeni dobrih 8 milijonov. Torej če boš k float vrednosti 8388608 prištel 1, se ne bo zgodilo nič. Zato moraš vrednosti iz enkoderja, ki ima 12 bitov na vrtljaj in 12 bitov za štetje vrtljajev preračunavati kot DINT, to je 32 bitni inteeger.

_________________
lp
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
aly
Član
Član



Pridružen-a: Tor 28 Sep 2004 14:51
Prispevkov: 9407
Aktiv.: 39.61
Kraj: Kranj - struževo

PrispevekObjavljeno: Pon Apr 29, 2013 12:17 am    Naslov sporočila:   Odgovori s citatom

Res je, Float tu nima kaj iskat.
Mogoče kasneje v programu, ampak ob branju vrednosti iz enkoderja pa sigurno ne sme biti.

_________________
I'm going to stand outside, so if anyone asks, I'm outstanding Smile
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran MSN Messenger - naslov
Tincek
Član
Član



Pridružen-a: Tor 13 Dec 2011 9:49
Prispevkov: 12
Aktiv.: 0.07
Kraj: Dolina reke Idrijce....

PrispevekObjavljeno: Pon Apr 29, 2013 8:51 am    Naslov sporočila:   Odgovori s citatom

Zal je bi bil projekt tako zastavljen da sem DINT pretvoril v REAL in potem z njim operiral in telovadil. Če imaš klasičen manipulator, zadeva zadošča! Glede na to, da gre za posebno uporabo servo motorja kaže, da sem napačno izbral predstavitev številk. To bo treba ob priliki popraviti in delati z DINT.

Je pa krmilnik od Simensa, festo motor EMMS-AS-100-M-HS-RM in njegov regulator.
Tehnični podatki motorja:

Absolute, single-turn Absolute, multi-turn
Operating voltage [V DC] 5
Protocol EnDat 2.1, only digital channel, max. stroke frequency (CLOCK) 2 MHz
Position values per revolution 262,144
Rotor position encoder resolution 18 bit

Revolutions 4,096 revolutions, 12 bit

Program v Simensu sem postavil sam. Regulator je pa original od FESTOja.
Vprašanje pa še vedno ostaja: Kako vemo kako naprej, da se nam zadeva ne začne vrteti nazaj?

_________________
Korajza velja!
Tincek
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
red_mamba
Član
Član



Pridružen-a: Ned 20 Feb 2005 17:56
Prispevkov: 1486
Aktiv.: 6.26
Kraj: Yogyakarta

PrispevekObjavljeno: Pon Apr 29, 2013 9:45 am    Naslov sporočila:   Odgovori s citatom

Tincek je napisal/a:
Zal je bi bil projekt tako zastavljen da sem DINT pretvoril v REAL in potem z njim operiral in telovadil. Če imaš klasičen manipulator, zadeva zadošča! Glede na to, da gre za posebno uporabo servo motorja kaže, da sem napačno izbral predstavitev številk. To bo treba ob priliki popraviti in delati z DINT.

Je pa krmilnik od Simensa, festo motor EMMS-AS-100-M-HS-RM in njegov regulator.
Tehnični podatki motorja:

Absolute, single-turn Absolute, multi-turn
Operating voltage [V DC] 5
Protocol EnDat 2.1, only digital channel, max. stroke frequency (CLOCK) 2 MHz
Position values per revolution 262,144
Rotor position encoder resolution 18 bit

Revolutions 4,096 revolutions, 12 bit

Program v Simensu sem postavil sam. Regulator je pa original od FESTOja.
Vprašanje pa še vedno ostaja: Kako vemo kako naprej, da se nam zadeva ne začne vrteti nazaj?


ce se vrednosti povecujejo potem se vrti v pravo smer. pa ni vazno a so negativne vrednosti vmes al ne. Problem lahko nastane samo ce ti naredi preskok in ti prelomi stevila potem se bo pa programu eventuelno zmesalo.

_________________
Bad things happen to good people all the time for no reason!
Blog
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
igo
Član
Član



Pridružen-a: Sre 11 Okt 2006 19:11
Prispevkov: 3641
Aktiv.: 15.97

PrispevekObjavljeno: Pon Apr 29, 2013 10:13 am    Naslov sporočila:   Odgovori s citatom

Ja pa to se trak dejansko vrti nazaj, ali se samo prikaz od zelo negativnega povečuje proti manj negativnemu in preko ničle potem nadaljuje s povečevanjem pozitivne pozicije?

Če se trak vedno premakne v pravo smer za predvideno razdaljo, je napaka le v prikazu. Na splošno se vedno vse odločitve (naprimer naslednja smer vrtenja glede na trenutno pozicijo) sprejemajo na podlagi izmerjenih ali vsaj čim manjkrat pretvorjenih podatkov. Prikaz je le šminka, za katero lahko s števili počneš karkoli, stroj pa mora svoje delovne spremenljivke znati sam izračunati v ločenem izračunu ter nato prav delati.

Običajno PLC pošlje gonilniku znano število impulzov iz neke spremenljivke, gonilnik pa sam poskrbi, da se motor obrne za ustrezen kot.
Servo motor ima enkoder, zato se z gonilnikom sama zmenita za koliko se mora motor obrniti.
Pri tem gonilnik šteje impulze, števec pa je treba pri stalnem vrtenju v eno smer redno brisati. Odvisno od gonilnika ga brišeš z ukazom ali z multifunkcijski digitalnim vhodom.
Pa enim gonilnikom z ukazi nastaviš parametre (čas ali hitrost pospeševanja/pojemanja, prestavno razmerje, JOG hitrosti, ...) pri drugih pa mora vse to vedeti PLC in gonilniku poslati končno obliko vlaka impulzov.

S katerim PLC ukazom pošlješ gonilniku število impulzov in smer?

Omenjaš 18 in 12 bitni enkoder. Imaš torej 2 enkoderja, ali PLC samo prebere iz gonilnika zgornjih 12 bitov, spodnjih 6 pa gonilnik obdrži zase?

PLC sploh bere pozicijo, ali le pošilja impulze in pozicijo sam računa?

_________________
Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Tincek
Član
Član



Pridružen-a: Tor 13 Dec 2011 9:49
Prispevkov: 12
Aktiv.: 0.07
Kraj: Dolina reke Idrijce....

PrispevekObjavljeno: Tor Apr 30, 2013 8:26 am    Naslov sporočila:   Odgovori s citatom

Vrednost se res povecuje. Samo kako ves od kje zaceti.
Vzames potem, ko se stroj vklopi, tisto pozicijo ki jo preberes ven iz Festo regulatorja kot zacetno in potem od tiste naprej pozicioniras?
Pa ce zmanjka elektrike in se trak ustavi nekje vmes?

_________________
Korajza velja!
Tincek
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Tincek
Član
Član



Pridružen-a: Tor 13 Dec 2011 9:49
Prispevkov: 12
Aktiv.: 0.07
Kraj: Dolina reke Idrijce....

PrispevekObjavljeno: Tor Apr 30, 2013 8:32 am    Naslov sporočila:   Odgovori s citatom

igo je napisal/a:
Ja pa to se trak dejansko vrti nazaj, ali se samo prikaz od zelo negativnega povečuje proti manj negativnemu in preko ničle potem nadaljuje s povečevanjem pozitivne pozicije?

Če se trak vedno premakne v pravo smer za predvideno razdaljo, je napaka le v prikazu. Na splošno se vedno vse odločitve (naprimer naslednja smer vrtenja glede na trenutno pozicijo) sprejemajo na podlagi izmerjenih ali vsaj čim manjkrat pretvorjenih podatkov. Prikaz je le šminka, za katero lahko s števili počneš karkoli, stroj pa mora svoje delovne spremenljivke znati sam izračunati v ločenem izračunu ter nato prav delati.

Običajno PLC pošlje gonilniku znano število impulzov iz neke spremenljivke, gonilnik pa sam poskrbi, da se motor obrne za ustrezen kot.
Servo motor ima enkoder, zato se z gonilnikom sama zmenita za koliko se mora motor obrniti.
Pri tem gonilnik šteje impulze, števec pa je treba pri stalnem vrtenju v eno smer redno brisati. Odvisno od gonilnika ga brišeš z ukazom ali z multifunkcijski digitalnim vhodom.
Pa enim gonilnikom z ukazi nastaviš parametre (čas ali hitrost pospeševanja/pojemanja, prestavno razmerje, JOG hitrosti, ...) pri drugih pa mora vse to vedeti PLC in gonilniku poslati končno obliko vlaka impulzov.

S katerim PLC ukazom pošlješ gonilniku število impulzov in smer?

Omenjaš 18 in 12 bitni enkoder. Imaš torej 2 enkoderja, ali PLC samo prebere iz gonilnika zgornjih 12 bitov, spodnjih 6 pa gonilnik obdrži zase?

PLC sploh bere pozicijo, ali le pošilja impulze in pozicijo sam računa?


Trak se dejansko vrti nazaj.
Iz Siemensa mu posljem pozicijo kam naj gre in hitrost preko profibusa , potem pa FESTO regulator sam prezacunava impulze.

Problem je samo takrat ko se linija izklopi. Sicer zadeva deluje BP.

_________________
Korajza velja!
Tincek
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
igo
Član
Član



Pridružen-a: Sre 11 Okt 2006 19:11
Prispevkov: 3641
Aktiv.: 15.97

PrispevekObjavljeno: Tor Apr 30, 2013 10:56 am    Naslov sporočila:   Odgovori s citatom

Tincek je napisal/a:
Je pa krmilnik od Simensa, festo motor EMMS-AS-100-M-HS-RM in njegov regulator.
...
Regulator je pa original od FESTOja.
Nato napiši TOČEN tip servo gonilnika!

Ali si povsem prepričan, da iz PLC-ja pošlješ pozicijo v pravilni obliki?
Prilepi sem zaporedje ukazov za pošiljanje pozicije (lahko "print screen" zaslona s tistim delom programa, ki pošilja pozicijo).

Napiši tudi vse parametre gonilnika, ki so drugačni od tovarniških nastavitev.
Če PLC ob zagou inicializira gonilnik (mu pošlje parametre), prilepi tudi zaporedje teh ukazov.

_________________
Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Merilna tehnika in senzorji Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran 1, 2  Naslednja
Stran 1 od 2

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 7 dni


Powered by phpBB © 2001, 2005 phpBB Group