 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
kavelj22 Član


Pridružen-a: Tor 23 Jan 2007 23:56 Prispevkov: 465 Aktiv.: 2.08 Kraj: Ljubljana
|
Objavljeno: Sob Jun 04, 2011 9:24 pm Naslov sporočila: Sodo/Liho |
|
|
Prosim za pomoc ker se nisem ravno vesc PLC programiranja. Imam stevec ki steje neke kose.
Rad bi samo vedel ce imam na primer prestetih 7 kosov koliko je sodih in koliko je lihih kosov.
Ker morem potem vse kose ki so prisli kot sodi pomnoziti z eno vrednostjo vse lihe pa z drugo vrednostjo!
Kaksen namig kako to narediti.
Hvala,lp! _________________ Živleje ni potica, življeje je črn kruh. Bul ga šparaš bul je suh. Zato pa kr na mizo žjim. |
|
Nazaj na vrh |
|
 |
RUros Član


Pridružen-a: Čet 09 Mar 2006 22:26 Prispevkov: 1031 Aktiv.: 4.39
|
Objavljeno: Sob Jun 04, 2011 9:36 pm Naslov sporočila: |
|
|
Tako na hitro. Če je število preštetih kosov sodih potem je sodih in lihih isto in to je ravno polovica vseh kosov. Če pa je število vseh kosov liho, potem bi isto delil z polovico in zaokrožil navzgor za liho št. kosov, saj je lihih kosov ravno za eno večje.
Se pravi: imaš vseh 6 kosov: Lihih je isto kot sodih = 3. Če je število vseh kosev 7: deliš z 2 in zaokrožiš navzgor da dobiš št. lihih kosov = 4 ostalo je sodo=3.
Upam da je prav sem na hitro napisal, naj me kdo popravi če ni prav. |
|
Nazaj na vrh |
|
 |
igo Član

Pridružen-a: Sre 11 Okt 2006 19:11 Prispevkov: 3641 Aktiv.: 16.01
|
Objavljeno: Sob Jun 04, 2011 11:32 pm Naslov sporočila: |
|
|
Kateri PLC imaš?
Naj bo X1 pogoj, ki je potreben, da bo števec štel (naprimer vhod iz zunanjega stikala).
Naj bodo plsX2 sprednje fronte signala (impulzov), ki se jih šteje.
Naj bo M1 notranji signal PLC-ja, ki določa sodost/lihost. Naj bo 1 "sodo", 0 pa "liho".
M2 naj bo notranji signal za preskok vrstice. M1' in M2' sta negirani obliki M1 in M2.
Da bo števec štel, morata biti izpolnjena X1 AND X2.
X1 AND plsX2 ===>>> INC C1 (poveča števec C1 za 1)
Sedaj pa dodaš še:
X1 AND plsX2 AND M1' ===>>> SET M1 (setira, če je bilo 0)
X1 AND plsX2 AND M1' ===>>> PLS M2 (impulz na M2 za en prehod programa do END)
X1 AND plsX2 AND M1 AND M2' ====>>> RST M1 (resetira, če je bilo 1)
Od tod naprej imaš v M1 znano, da je trenutno število sodo/liho.
X1 AND plsX2 AND M1 ===>>> INC C2 (poveča števec C2 za 1) povečuje sode
X1 AND plsX2 AND M1' ===>>> INC C3 (poveča števec C3 za 1) povečuje lihe
Pogoji na levi strani lahko ===>>> vplivajo na več signalov na desni strani. Ločil sem jih zaradi nazornejšega prikaza. _________________ Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor |
|
Nazaj na vrh |
|
 |
kavelj22 Član


Pridružen-a: Tor 23 Jan 2007 23:56 Prispevkov: 465 Aktiv.: 2.08 Kraj: Ljubljana
|
Objavljeno: Ned Jun 05, 2011 8:37 am Naslov sporočila: |
|
|
PLC je Siemensov 400...
Stvar je pa taksna. Imeti moram tudi moznost ne samo da stejem kose, ampak da lahko v stevilo prestetih kosov tudi rocno vstavim stevilo kosov in nato preracunam koliko je sodih in koliko lihih.
Sodi in lihi kosi so razlicne dimenzije in se morajo spuscati vertikalno za razlicno pot.
Poskusal sem tako da sem prestel vse kose in z deljenjem ugotovil koliko je katerih. Potem sem sode pomnozil z faktorjem spuscanja in lihe z faktorjem spuscanja. To dvoje potem sestel in dobil koliko se morajo spustiti skupaj.
Problem imam ker deljenje deluje samo ce delim liho stevilo kosov z 2 in potem pristejem 1 da dobim liho stevilo kosov. Ce delim sodo stevilo kosov z 2 pa bi moral pristevanje 1 k lihemu preskociti in to ne vem kako narediti!
Vse skupaj bi se moralo zgoditi v "One Shoot" ce lahko tako recem. Ob vsakem novem nalozenem kosu se mora zgoditi nov izracun. Spuscanje deluje na osnovi enkoderja zato se preracuna pot in se spusca dokler dejanska vrednost ne preseze preracunane vrednosti!
Hvala, lp! _________________ Živleje ni potica, življeje je črn kruh. Bul ga šparaš bul je suh. Zato pa kr na mizo žjim. |
|
Nazaj na vrh |
|
 |
igo Član

Pridružen-a: Sre 11 Okt 2006 19:11 Prispevkov: 3641 Aktiv.: 16.01
|
Objavljeno: Ned Jun 05, 2011 5:51 pm Naslov sporočila: |
|
|
Malo nenavadna zahteva je s tem sodim in lihim številom.
Ali ne moreš zaznavati dimenzij z induktivno ali kapacitivno sondo, fotocelico in prekinjanjem IR snopa, ... ? S tem veš, kateri izdelek je na vrsti in ga usmeriš.
Če so predmeti vedno naloženi natanko v zaporedju mali, veliki, mali, veliki, ... je dovolj, če veš, kateri je prvi v saržerju. Položaj usmerjevalne lopute se nato ob vsaki prožitvi zamenja. Uporabiš dve tipki in za zagon cikla pritisneš na tipko "mali" oziroma "veliki".
Kdo ali kaj pa dozira izdelke v saržer? Se ne da že tam ločiti malih in velikih izdelkov?
Deljenje ima svoje muhe, zato se mu je dobro izogniti, če se le da.
Lestvični diagram ima tudi labele, zanke in podprograme.
Skočiš v podprogram, tam v zanki od spremenljivke odštevaš 1. Ob vsakem prehodu zanke s pomočjo M1 in M2 setiraš/resetiraš stanje M1 in povečaš sodi oziroma lihi števec. Ko je spremenljivka enaka 0, pa letiš ven iz zanke. Ker so številke majhne, bo zračun trajal nekaj deset us. Na koncu v dveh števcih dobiš število sodih in število lihih.
Saj pišeš v lestvičnem diagramu, kajne? _________________ Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor |
|
Nazaj na vrh |
|
 |
kavelj22 Član


Pridružen-a: Tor 23 Jan 2007 23:56 Prispevkov: 465 Aktiv.: 2.08 Kraj: Ljubljana
|
Objavljeno: Ned Jun 05, 2011 6:55 pm Naslov sporočila: |
|
|
V bistvu to ni moja zahteva sistem tako deluje in ni druge opcije ker je tako zasnovan v osnovi.
Gre za zlaganje U - profilov (Channel profile ). Z vrtljivimi magneti se jih polaga na pocket-e. Pri tem se jih obraca da grejo eden v drugega.
Zadeva ima samo fotocelico ki zaznava nov layer na pocket-u in potem se zacne spuscati seveda z nekaterimi dodatnimi pogoji!
Stvar deluje po enakem sistemu tudi sedaj brez razlocevanja ampak ce bi lahko to naredu bi lahko ob kakrsni koli napaki oz nepravilnem pozicioniranju zaradi kakrsnekoli napake zadevo postavil v tocno dolocen polozaj in nadaljeval sekvenco od tam kjer bi se morala.
Drugace je program v lestvicnem diagramu ja!
Bomo videli. Tezko je tako tudi razloziti tocno kaj in kako!
Hvala, vseeno! _________________ Živleje ni potica, življeje je črn kruh. Bul ga šparaš bul je suh. Zato pa kr na mizo žjim. |
|
Nazaj na vrh |
|
 |
igo Član

Pridružen-a: Sre 11 Okt 2006 19:11 Prispevkov: 3641 Aktiv.: 16.01
|
Objavljeno: Ned Jun 05, 2011 8:29 pm Naslov sporočila: |
|
|
Aha, to je pa kot pri stroju za izdelavo palet, ko se jih na koncu zlaga eno pod drugo v stolpec (palete prihajajo spodaj in dvigajo stolpec nad seboj).
Nastaviš, koliko naj jih bo v stolpcu (veljavne so samo lihe številke). Spodnja in zgornja morata biti vedno obrnjena prav, vmes se izmenjujejo prav/narobe, da so bolj na gosto zložene. V obračalnik se vedno se pripelje prav obrnjena, potem pa se po potrebi obrne narobe, oziroma gre kar skozi.
Ob resetu števca se pod še nedokončan stolpec pripelje prav obrnjena paleta, stolpec se umakne, števec gre na 0 in začne se zaporedje novega stolpca (prav,narobe, ... , prav), naslednji stolpec spet (prav,narobe, ... , prav),...
Vsaj tako sem jaz naredil. Pa možno je izbrati tudi (prav, prav, ....prav), tam je možno izbrati tudi sodo število palet v stolpcu.
Morebitno škart paleto je možno izločiti kjer koli, vendar najkasneje pred obračalcem (iz njega pade direkt pod stolpec), kasneje ni več možno, oziroma je treba prekiniti cikel stolpca.
Skratka, ob nekem resetu naj se nedokončan stolpec umakne in začne se zaporedje enega cikla (da napolni celoten stolpec), ki se potem ponavlja za vse nadaljnje stolpce. Tisti nedokončan stolpec pa naj bo čim manjši, da ga lažje "vrineš" v nek "buffer", kjer profili čakajo na zlaganje.
Ali pa dodaj eno induktivno sondo na prost vhod, z njo pa zaznavaj, kako je obrnjen profil, ki je trenutno na vrhu. Pri narobe/prav obrnjenem U profilu je namreč enkrat na vrhu srednja stranica, drugič je pa ni. To je najlažje. _________________ Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor |
|
Nazaj na vrh |
|
 |
igo Član

Pridružen-a: Sre 11 Okt 2006 19:11 Prispevkov: 3641 Aktiv.: 16.01
|
Objavljeno: Ned Jun 05, 2011 9:20 pm Naslov sporočila: |
|
|
Naj bo trenutno število izdelkov shranjeno v D10 (Data 10). D10 lahko tudi ročno vneseš.
V vsakem trenutku je število lihih izdelkov za 0 ali 1 večje od števila sodih izdelkov.
---||--- naj bo izpolnjen ta pogoj, takrat se bo zgodilo sledeče:
[DIV D10 K2 D11] ; D10 / 2 = D11 ; rezultat gre v D11, ostanek pa v D12
[MOV D11 D2] ; D11 se premakne v števec sodih števil D2
[MOV D11 D1] ; D11 se premakne v števec lihih števil D1
[ADD D12 D1 D1] ; D12 + D1 = D1 ; številu lihih števil doda ostanek
[MUL D2 KS D20] ; D2 * KS = D20 ; zmnoži D2 in konstanto sodih števil, shrani v D20
[MUL D2 KL D21] ; D2 * KL = D21 ; zmnoži D2 in konstanto lihih števil, shrani v D21
[ADD D20 D21 D23] ; V D23 imaš sedaj iskano pozicijo, sestavljeno iz (D10/2)*KS + (D10/2 + ostanek)*KL . Vse to se bo zgodilo, ko bo izpolnjen pogoj ---||--- .
Tako gre pri Mitsubishiju. Poglej si v Help-u, sintakso DIV ukaza, kam gre celoštevilski del in kam gre ostanek. _________________ Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor |
|
Nazaj na vrh |
|
 |
kavelj22 Član


Pridružen-a: Tor 23 Jan 2007 23:56 Prispevkov: 465 Aktiv.: 2.08 Kraj: Ljubljana
|
Objavljeno: Pon Jun 06, 2011 6:10 am Naslov sporočila: |
|
|
IGO nisem se videl stroja za zlaganje palet ampak ja sigurno je podoben princip. Enkrat so noge obrnjene gor drugic dol in profil gre eden v drugega! In potem naslednji.
Tukaj se sicer zlagajo tudi H Beam prifili in Equal&Unequal Angle profili ampak pri tistih ni problem ker jih spuscas vedno za enako visino. U profil pa se spusca glede na to kako je obrnjen.
Moja sekvenca je popolnoma enaka kot si jo napisal spodaj samo da jaz ne vem kam se shrani ostanek da bi ga uporabil za pristevanje k lihim stevilom oz. da se takrat ko imam ostanek k sodemu stevilu ne bi pristelo +1.
Pogledal sem v STL kako je narejeno deljenje in tam pise da se rezultat shrani v ACCU 1-L ostanek pa v ACCU 1-H.
Contents of ACCU 2-L before instruction (IW10): "13"
Contents of ACCU 1-L before instruction (MW14): "4"
Instruction /I (ACCU 2-L / ACCU 1-L): "13/4"
Contents of ACCU 1-L after instruction (quotient): "3"
Contents of ACCU 1-H after instruction (remainder): "1"
Ampak kako ta ostanek dobiti od tam! V bistvu me ze skos to muci ampak sem mislil ce bo mogoc padla kaksna druga resitev. Pa vidim da imas narejeno popolnoma isto oz. ima Mitsubishi !
Hvala, lp! _________________ Živleje ni potica, življeje je črn kruh. Bul ga šparaš bul je suh. Zato pa kr na mizo žjim. |
|
Nazaj na vrh |
|
 |
kavelj22 Član


Pridružen-a: Tor 23 Jan 2007 23:56 Prispevkov: 465 Aktiv.: 2.08 Kraj: Ljubljana
|
Objavljeno: Pon Jun 06, 2011 2:01 pm Naslov sporočila: |
|
|
Okej resu problem. Napisal en programcek (STL) ki mi glede na vhod vrne stevilo sodih in lihih kosov + se ostale modifikacije v programu seveda. V bistvu nobene filozofije. Stvar dela tako da, to je vazno!
Hvala IGO za pomoc! _________________ Živleje ni potica, življeje je črn kruh. Bul ga šparaš bul je suh. Zato pa kr na mizo žjim. |
|
Nazaj na vrh |
|
 |
kavelj22 Član


Pridružen-a: Tor 23 Jan 2007 23:56 Prispevkov: 465 Aktiv.: 2.08 Kraj: Ljubljana
|
Objavljeno: Tor Jun 07, 2011 1:32 pm Naslov sporočila: |
|
|
Reseno!
Hvala, lp! _________________ Živleje ni potica, življeje je črn kruh. Bul ga šparaš bul je suh. Zato pa kr na mizo žjim. |
|
Nazaj na vrh |
|
 |
|
|
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: 492 dni
Powered by phpBB © 2001, 2005 phpBB Group
|