Tiedote ylläpidolta:

Elektroniikkafoorumi sulkeutuu tietoturva ongelmien takia.
Käyttäjien tietoja (yv:t, sähköpostiosoite ja salasanan hash) on saattanut vuotaa vääriin käsiin.

Foorumi on asettettu vain luku tilaan. Vanhoja keskusteluja voi lukea palvelinsopimuksen päättymiseen asti.
Tietokannasta on poistettu kaikki salasanat, sähköpostiosoitteet ja yksityisviestit.

Jos haluat saada omat yksityisviestisi, lähetä sähköpostia yllapito@elektroniikkafoorumi.com
samasta sähköpostista mikä oli foorumin tiedoissa niin voin kaivella niitä varmuuskopioista.

Mielenkiintoni foorumin ylläpitoon on viime vuosina ollut vähäistä jo muutenkin joten tähän on hyvä lopettaa.
Kiitokset kaikille käyttäjilla ja pahoittelut mahdollisista ongelmista.

Päivitys: Näyttäisi siltä että mahdollinen vuoto koski vanhaa phpBB2 tietokantaa,
joten helmikuuta 2012 uudemmat tiedot pitäisi olla turvassa.

-Lahha
yllapito@elektroniikkafoorumi.com


Siemens S5 käskylistaohjelmointi

Keskustelua digitaalielektroniikasta

Valvoja: Moderaattorit


Kokenut jäsen
Kokenut jäsen
Viestit: 280
Liittynyt: Ma Tammi 15, 2007 14:14
ViestiLähetetty: Pe Elo 06, 2010 10:52
Laitetaan tämä kysymys tähän osioon, kun ei sopivampaakaan ole.

Kysymys on Siemens S5 logiikan ohjelmoinnista STL- muodossa. Ladder ja FBD ovat minulle tutumpia. Ovatko seuraavat rivit hepreaa vai selvää kuin pläkki?


00A :U(
00C :L MW210
00E :L EW74
010 :<=F
012 : )
014 :U(
016 :L MW212
018 :L EW74
01A :>=F
01C : )
01E := M 203.0
...

Jotain ymmärrän, eli L = load ja EW74 käsky lukea osoiteesta 74 missä laskurin "high byte". Kysymyksessä laskurimoduli johon kytketty pulssianturi. MW 210 ja 212 liittynevät asetusarvojen lukemiseen jostain muistipaikasta. Lopuksi asetetaan tietyin ehdoin markkeri M203.0.

Mistä näille käskyille löytyisi selkeät "suomennokset"?

Vanhempi jäsen
Vanhempi jäsen
Viestit: 594
Liittynyt: Ma Tammi 29, 2007 21:52
ViestiLähetetty: Pe Elo 06, 2010 13:00
http://www.scribd.com/doc/12586666/Siem ... -and-S7400

http://www.plcdev.com/statement_list_stl_cheat_sheets

Olisikohan noista linkeistä apua? Ainakin niissä käsitellään STL-käskykantaa.

Jäsen
Jäsen
Viestit: 115
Liittynyt: Su Heinä 08, 2007 21:05
ViestiLähetetty: Pe Elo 06, 2010 21:25
TAP kirjoitti: Mistä näille käskyille löytyisi selkeät "suomennokset"?
Vaikka Siemensin sivuilta.

00A :U(
00C :L MW210
00E :L EW74
010 :<=F
012 : )
014 :U(
016 :L MW212
018 :L EW74
01A :>=F
01C : )
01E := M 203.0


"C-Pseudokoodina":
IF (EW74 <= MW210 AND EW74 >= MW212)
{
M203.0 = 1
}
else
{
M203.0 = 0
}
Eli vertaillaan onko EW74:n arvo 16bit muuttujien MW210 ja Mw212 välissä. Jos on niin asetetaan merkkeri M203.0 arvoon 1.
"Now we're all sons of bitches." - Kenneth Bainbridge

Kokenut jäsen
Kokenut jäsen
Viestit: 280
Liittynyt: Ma Tammi 15, 2007 14:14
ViestiLähetetty: La Elo 07, 2010 14:50
Nonniin, StiNgeRin linkit käsittelivät lähinnä uudempaa S7-logiikkaa, mutta pelin henki on sama.

Williamin esittämään ratkaisuun päädyin itsekin ankaran googlauksen ja pähkäilyn jälkeen. Todettakoon, että C-kieli on minulle vierasta, joskin kyseinen pätkä lienee ymmärrettävissä peruskoulupohjalta.

Esittämäni pala koodia on kuitenkin vain esimerkki ja lisää löytyy 40 sivua. Myös esittämääni pätkään liittyen on vielä selvitettävää, kuten muuttujan MW 210 olemus. Lyhenteiden merkitys alkukielellä auttaisi muistamaan ne. Jaa mutta olisiko esim. muuttujan MW nimennyt ohjelmoija itse, eikä MW viittaisi suoraan tiettyyn muistialueeseen. Valitettavasti listauksessani ei näy kommentit ja muut mahdolliset headerit tms.

Pitäisi olla joku laajempi selvitys asiasta, josta selviäisi koko homma ja varsinkin käskyt ja muut perusasiat tiivistetysti. Siemensin sivuilta juttua löytyy, mutta ei tunnu olevan "oikotie onneen". Pitänee edetä sivu sivulta:

http://support.automation.siemens.com/W ... 1&view=new

http://support.automation.siemens.com/W ... id=1176649

Jäsen
Jäsen
Viestit: 115
Liittynyt: Su Heinä 08, 2007 21:05
ViestiLähetetty: Su Elo 08, 2010 21:14
S5 ja S7-alustat on hieman erilaisia. Minäkin saan näppylöitä S5-ohjelmoinnista.

Mainitsemasi manuskat ovat hyvä pohja asioiden kaivelemiseen. Helppoa tietä ei ole, kun kyseessä on Siemens. Helpoimmalla pääsee, kun kaivaa esille laitteisiin kuuluvat manuaalit ja saman sarjan perusohjelmointioppaat.

Siemens-sanastoa
M = Merker = globaali muistilippu
W = Word = 16-bit muuttuja
B = Byte = 8-bit muuttuja
I = Input = tulo
Q = Output = Lähtö
T = Timer = ajastin
C = Counter = laskuri
E = Extended/External = viittaa yleensä korttien muistialueille (Vastaa käsittääkseni S7:n P-aluetta).

DB = Data Block
OB = Organization Block

MW210 viittaa siis 16-bit sanaan muistipaikassa 210 globaalissa muistiavaruudessa (Eli varaa bytet 210 ja 211, jos en kauheasti muista väärin).

MB210 viittaa vastaavasti 8-bit muuttujaan.

M210.0 viittaa vastaavasti samaan muuttujaan, mutta vain sen ensimmäiseen bittiin.

Kokenut jäsen
Kokenut jäsen
Viestit: 280
Liittynyt: Ma Tammi 15, 2007 14:14
ViestiLähetetty: Ma Elo 09, 2010 16:47
Logiikkojen ohjelmoinnista niukasti kokemusta tikapuu (LAD) ja toimintalohkomuodossa (FBD), joten joidenkin merkkien merkitykset ennestään tuttuja. Käskylistaa (STL) muistuttavasta vain PIC-mikrokontrollerin assemblystä vähäinen kokemus.

Tuli eteen eräs hieman ongelmallinen laite, josta erittäin puutteellinen dokumentointi. Ongelmaa ei ainakaan lievitä se, että se on hankittu Ruotsista käyttettynä. Logiikan ohjelma kuitenkin tuli paperille printattuna ja alkoi vaivaamaan rivien tarkempi merkitys, kun ohjelman kulun ymmärtämisestä voisi olla hyötyä, vaikka yleensä se ei korjaamisen kannalta ole niin välttämätöntä.

Kokenut jäsen
Kokenut jäsen
Viestit: 280
Liittynyt: Ma Tammi 15, 2007 14:14
ViestiLähetetty: La Joulu 04, 2010 8:37
Samaan aiheeseen liittyen kysyisin onko olemassa mitään halpaa (ilmaista) tapaa ottaa Siemens S5 logiikasta backuppia ja mahdollisesti jopa tarkastella sitä? Varsinainen ohjelman teko tai modifiointi ei olisi niin oleellista. Joitakin demo-versioita taitaa olla, joilla ei voi tehtyä ohjelmaa ladata logiikkaan.

Kysymys olisi yksityisestä harrastekäytöstä, ei liiketoiminnasta.

Paluu Digitaalielektroniikka

Paikallaolijat

Käyttäjiä lukemassa tätä aluetta: Ei rekisteröityneitä käyttäjiä ja 0 vierailijaa

cron