Új hozzászólás Aktív témák
-
Szirty
őstag
Szia!
Szerintem közel jársz a megoldáshoz.
Valószínűleg konzisztencia probléma van.
Tehát kiírja ő a HMI tag-ek tartalmát a file-ba, csak épp azokat még nem olvasta be a PLC-ből.Csináltam egy kisebb próba projectet ami változókat olvas scriptben és kiírja file-ba, ahogy nálad is.
Nekem is nullákat rak a file-ba. De ha az adatgyűjtést cyclic continuous-ra állítom, akkor a valós PLC-beli érték kerül a file-ba.Sajnos ez nagyon sok változónál megint csak nem elegáns (ciklikusan olvastatni mindet).
De megoldást jelenthet az acquistion mode On demand-ra állítása és az UpdateTag funkció.
Ez utóbbit nem próbáltam. -
Szirty
őstag
"ha jól emlékszem az 1200as 2 megáig támogat tia sd-t"
Nem giga az a mega?
"Nekem az nem teljesen tiszta, hogy adott az 1200-nál vmennyi programmemória és "ram", aztán adott valamennyi "tárhely", ami kártyával bővíthető valameddig."
Az S7-1200 easy book segíthet részleteket megtudni.
-
Szirty
őstag
"Ezért van az 1200asban már csak scl awl nélkül, megyünk a rendes programozás irányába."
TIA Professional-ban már oda is értünk.
Ugyanis kivezették belőle a multiplex tag-et, az index tag-et és az array tag-et.
Remek, kiváló. Így ha egy struktúra 1400 eleme közül kell választani, akkor faragni kell hozzá 1400 tag-et, 4 helyett.
Had' fogyjon az a power tag, vegyék a 65535-ös licencet kétmilláért.... -
n0rbert0
senior tag
Igen sejtettem, hogy nem teljesen úgy működik, mint a 300-as.
De az állításomat továbbra is fenntartom, hogy a ciklusidőt nem befolyásolja nagyban, hogy miben írod a kódot. Én úgy tudom elképzelni, hogy egy közös nyelvre/kódra/stb. fordítja le a compiler a felírt kódot (LAD/FBD/SCL) és az töltődik le (az most lényegtelen, hogy milyen módszerrel fordít).
Sajnos nem találtam semmilyen hivatalos forrást ennek bizonyítására, nyugodtan javítsatok ki, ha tévedek. -
BG*
csendes tag
Igen, Tia Portal V14 Basic, S7-1200 (1214C DC/DC/DC)
KTP700 Basic HMIA licensz külön kb 70-90K, mi Starter Kittel vettük 260K körül, ebből a HMI-t (KTP700) fel is használjuk, van hozzá Basic licensz és egy alap PLC ami jó teszteléshez.
Amúgy a tapasztalataim jók, ami gépet most csinálok, ennél is a működéssel nem lesz gond, csak a felhasználókezelést bonyolították kicsit túl. Eddig általában elég volt 1-2 biztonsági szint, felhasználónévvel és jelszóval, de itt RFID olvasó van, a leolvasott azonosítót a szerverről letöltött csv-ben levő adatokkal kell összehasonlítani, és ez alapján beállítani a jogosultsági szintet.
LAD, FBD, SCL használható a PLC-ben.
-
joci9
tag
Siemensét nem ismerem, az ESHMI-t úgy debuggolom, hogy megkeresem a c meghajtó bugyraiban az általa egybegyúrt scriptet, mert a hibákat csak futás közben írja az abban lévő sorszámmal.
Doksi nuku, nemrég kerestem a neten, de csak a saját írásomat találtam meg itt a fórumon :-) -
Bazs87
tag
NTP szerver S7 300/400/1200/1500:
eddig 300ason teszteltem, be kell húzni a libből kb 10 objektet (néhány sfc, udt, fb).
Eztán a leírásnak megfelelően felparaméterezni az fb1000-ret és amint billen a startjel gyönyörűen működik.
(tesztelve egyenlőre python3.4 ntp libbel [link] és egy erre használható ingyenes tool-lal [link] hasonló szintax-szal reagál, mint a pool.ntp.org, ebből gondolom, hogy menni kell)Remélem valakinek hasznos lesz az infó.
Üdv!
Bazs87 -
byte-by
tag
halo
ilyen blokkok TIA -ban is vannak. ( blokkok mellett mindig fel van tüntetve , hogy melyik verziótól használható)
illetve mellékeltem egy linket amiben vannak leírások.
én magam még nem is csináltam ilyet ebben a környezetben, legfeljebb 1 HMI-t több PLC-ről, de az
semmilyen plusz megoldást nem kíván.A "netpro" TIA-s verziója, a 'Devices & networks" opció alatt van a projekt fában.
ott található a Topology, network, device view. Ez tekinthető annak.get-put , communikáció leírás:
https://support.industry.siemens.com/cs/document/82212115/how-do-you-configure-and-program-an-s7-connection-and-the-put-and-get-communication-instructions-for-data-transfer-between-two-s7-1500-cpus-?dti=0&lc=en-WW -
Psanyi42
tag
Igazad van akkor lesz hátultesztelős, ha a végére írod a feltételt, szóval azzal nincs gond.
A Dir utasítás leírásában az van, ha üresen hagyod a paramétereket, azaz ()-et írsz csak, akkor az előző Dir utasítást ismétli meg, amely most már a 2. találatot fogja visszaadni. Ha Új keresést szeretnél kezdeni, akkor kell ismételten megadni az elérési útvonalat. De ebben az esetben az 1. számútól kezdi minden esetben a keresést.
-
plutokas
csendes tag
Szia,
Habár a Wince file kezelése nem nagyon változott a különböző verziókban.... De ha nem vagy még nagyon mélyen a programban és nem gond pár EUR elköltése akkor nagyon ajánlom komponens készletek megvételét. Demo is letölthető hozzá. Ha érdekes lehet küldök linket. Van egy jó Török gyártású és egy megbízhatóbb német. Én az utóbbit használom. -
Psanyi42
tag
Heló Balázs,
file.Dir(pathname,[ attributes])
Ha itt a pathname -nél *-ot adsz meg, akkor az összes fájlt megtalálja
Ha ezt először futtatod, akkor az 1. fájlt adja vissza, ha ezután még egyszer paraméter nélkül, akkor a következőt, tehátfilePath = file.Dir(*)
while filePath <> "" do
filesystem.FileCopy filePath newFilePath
filePath = file.Dir()
endNem tudom a pontos szintaktikát de valami ilyesmi lehetne egy mappán végigmenő kód, lehet kell bele set meg ez az amaz, meg deklarálást sem csináltam, de remélem el tudsz menni rajta.
-
gagyigeri
csendes tag
Hello Bazs87!
Megoldódott a hiba esetleg azóta?
Progrmozgattam már codesysben, régóta szemezgetek, hogy a málnára is rátegyem.
Ha én egy egyszerű ledvillogtatást akarok csinálni szimulátor módban, akkor nem akarja lefordítani, ha online használom, akkor gond nélkül megy.
Neked lefordul a codesys szimulátor módban?Üdv.
-
And
veterán
"A mikroC-s témához tudnál nekem linkelni esetleg egy általad javasolt hardver tanulókitet? Felkeltetted az érdeklődésemet vele."
Ehhez sajnos nem tudok sokat hozzáfűzni, mert sosem rendelkeztem hivatalos 'tanuló kittel' vagy eval board-dal. Egy akkoriban jónak számító magyar nyelvű jegyzettel (Madarász L.) kezdtem, aztán jöttek a lehetőleg egyszerű nyelvű - basic, néha egy kevés beágyazott assembly - fordítók és a kisebb 8-bites (esetemben PIC, de természetesen ez lehet egyéni preferencia szerint akármi más is) kontrollerek adatlapjai, aztán hajrá. Egy mai jobb fordító, például a MikroElektronika termékei egy rakás példaprogramot, nagyon jó help-eket és azokhoz tartozóan sok-sok áramköri részletrajzot tartalmaznak. Ugyan nem ingyenesek, de egy bizonyos kódméret eléréséig teljes értékű demóként használhatók a letölthető fordítóik, és ez sok esetben kezdő feladatokhoz, kisebb tárhellyel rendelkező kontrollerekhez - meg nagyobbakhoz is, csak azok nem teljesen kihasználhatóak ebben a formában - elegendő lehet. De ez itt eléggé offtopik. -
joci9
tag
Szasza!
Nem tőlem kérdezted, de pár éve kezembe került egy pár éves nuvoton tanuló akármi, pár ezer forint, és abba az spi-t meg az alapvető hardvereket szórakozásból kis tapasztalattal tudtam használni pár óra alatt, a fentebb említett coocox fejlesztővel és GNU fordítóval, ami mind ingyenes és szerintem használható. Jaa és van benne sok segítség alapból, szerintem mindenképpen érdemes megnézni.
Van egy komolyabb projekt amit elkezdtünk, ST mellett döntöttünk végül, körbenéztem, 2 fizetős (Keil, IAR) fejlesztő kipróbálása után a coocox mellett döntöttem, nem a pénz miatt, és eddig minden OK vele.Közben megnéztem, 7830. https://shop.chipcad.hu/Welcome/Default.aspx?scenarioID=360&pid=877
Ebben benne van a programozó is.
Én ingyen kaptam :-)üdv
J -
joci9
tag
Szia!
Jaaa a perifériákra jó a modbus RTU, azt azért meg lehet írni mikrokontrollerbe elég gyorsan, különösen ha csak erre az egy funkcióra kell. Mi mostanában arm alapút használunk (STM32), de van mindenféle ócsó pl a Chipcadnél is.
Az eredeti kínai coocox meg egy jól használható fejlesztő. http://www.coocox.org/software/coide.php
A codesys engem is érdekel ezen a raspin, ha jól működ jelezd :-)üdv
-
And
veterán
Nem az a baj az ethernettel meg a modbus-szal, hogy ne lehetne megoldani azokat egy kisebb (akár nyers mikro-) kontrolleren, hanem pont az, hogy az olyan feladatokhoz, mint egy egyszerű hőmérés, teljesen feleslegesek, ehhez 'túl sokat tudnak'.
"A soros port/i2c-nél pedig a kábelezhető távolság ami gondot okoz."
Ez akár igaz is lehetne, de például egy SPI-buszos hőmérő órajele DC-től sok MHz-ig skálázható. Tehát nem gond a távolság, legfeljebb szokatlanul lassú, kHz-es nagyságrendű órajelet alkalmazunk hozzá. Példa: TC77, 1/16 °C-os mérési felbontás (13-bites kód), szobahőmérséklet közelében legfeljebb 1°C hiba, körömpiszoknyi tokban (SOT-23-5) is létezik és nagyjából 300 forintba kerül. Kiolvasni pedig még egy I2C-buszosnál is egyszerűbb eset, akár tisztán szoftveres rutinokkal is megoldható minimális gyakorlattal.
Nekem is az az egyik legfőbb érvem az otthoni PLC-vel vagy ahhoz hasonló 'bonyolultabb' vezérlővel szemben, hogy (bár azokkal dolgozom és egy-egy levedlett példányhoz akár hozzá is juthatnék) az ilyen egyszerű, pici és főleg olcsó hőmérő vagy akármilyen szenzorokkal sajnos nem tud mit kezdeni, vagy nagyon meg kellene erőszakolni ehhez a feladathoz. Egy szintén háromjegyű forintösszegért beszerezhető μC ellenben tartalmaz egy rakás legalább 10-bites ADC-t és ráköthető egy marék ilyen szenzor, a filléres LC-kijelzőkről, nyomógombokról, kapcsolókról, háttértárról meg mindenféle alacsony szintű perifériáról nem is beszélve. Csak akkor nem kell a szabvány codesys, hanem egy akármilyen forrásnyelven megírt fix program. Persze egy Arduino vagy más diszkrét I/O-val rendelkező kontroller is megbirkózik egy ilyen buszos érzékelővel, egy dedikált PLC viszont ehhez erős túlzás. Mellesleg egy bonyolultabb vezérlő (akár PLC) és egy filléres kontroller sem zárja ki egymást feltétlenül. Utóbbi használható többek közt az egyes érzékelők alacsonyabb szintű áramköri protokollon való lekérdezésére, valami 'PLC-hez jobban passzoló' linken, akár modbus-on pedig továbbíthatja azt egy nagyobb kontroller felé, ha a 'kicsi' mellet olyanra is szükség lenne. -
And
veterán
"nem ipari projektről van szó, inkább otthoni "berhelés""
Az otthoni 'berhelés' szerintem tipikusan mikrokontrolleres téma. Legfeljebb nem codesys-es stílusban hozod létre a vezérléshez szükséges szoftveredet, hanem akármilyen nyelven, amihez rendelkezik fordítóval az adott μC. Akár az ethernet is megoldható, de én azt nem erőltetném, mivel jóval egyszerűbb fizikai vonalak / protokollok is illeszthetőek kontrollerekhez. Például adatbuszos hőszenzorokból elég nagy a választék, némelyik megfelelő pontossággal és felbontással rendelkezik, nagyon olcsó és szinkron soros buszon kiolvasható. Modbus-t már egyszer elkezdtem leprogramozni mikrokontrollerre, de aztán nem volt meg hozzá a kellő motiváció (ha a PLC-t kihagyjuk a képletből, vagy nincs valami komolyabb kész egységünk, pl. valamilyen mérőmodulunk, amely csak modbus-on kérdezhető le, akkor ez a protokoll mellőzhető). -
Szirty
őstag
Szia Bazs87!
"Esetleg van egy megoldásod hozzá? A felrakott példáidból sokat tanultam, érdekelne hogyan oldottad meg."
Fuhh. Hát az már elég régen volt, de előkapartam.
Itt találod. Néhány napig kint hagyom... -
joci9
tag
Szia!
Én ESA panelon és runtime-al PC-én használom ezeket.
Ott VB script van és annak függvényei működnek szépen.
CE-s panelon igaz csak az alapok, de ott is ment a fájl másolás stb.
Most PC-re fejlesztek, itt ha van telepített MS-Office vagy Libreoffice akkor használhatók annak a függvényei is, azokkal szépen lehet excel táblát írni olvasni.Nekem ez a leírás sokat segített:
http://www.zmgzeg.sulinet.hu/ntk/inf10/alg/vbsprutm.pdf
neked 23-ik oldaltól (meg a többi) :-)ESA CE panelen így néz ki, ott nem próbáltam a win file system objectet ami a leírásban benne van
If ESAHMI.ESAFILE.EXISTS("C:\ESA\")<>0 Then
dest="C:\ESA\"
destp="F:\ESA\" 'ha pc-én fut akkor ez az elérési út, ez a pendrive
pcvan=0
Else
dest="\Hard Disk\Documents\" 'ha wince panelon fut akkor meg ez a pendrive
destp="\Hard Disk2\"
pcvan=1
End Iflistaindex=ESAHMI.ESATAG.GetCurrentRawValue ("EListaindex")
dest1=dest & "eloadas" & listaindex & ".txt"
dest2=destp & "eloadas" & listaindex & ".txt"
If ESAHMI.ESAFILE.EXISTS(destp)<>0 Then
If ESAHMI.ESAFILE.EXISTS(dest1)<>0 Then
ESAHMI.ESAFILE.COPY dest1, dest2
Else
ESAHMI.ESAMsgBox "Nincs ilyen eloadas"
End If
Else
ESAHMI.ESAMsgBox "Dugjal sticket bele"
End Ifüdv
-
Szirty
őstag
Sajnos nem tudok kulcsra kész megoldással szolgálni, csak ötletet próbáltam adni.
A TIA print screen funkciója nem vágólapra teszi a képet, hanem kinyomtatja.
Ha sikerül feltenni CE-re egy olyan virtual printer drivert ami kép file-ba nyomtat, akkor már létrejön a file.Utána egy CMD file-al lehet vizsgálni az USB jelenlétét és copy-val átrakni a képet.
Új hozzászólás Aktív témák
- alza vélemények - tapasztalatok
- Milyen billentyűzetet vegyek?
- Vacsorázni invitál a OnePlus
- PlayStation 3
- ASUS routerek
- AMD vs. INTEL vs. NVIDIA
- exHWSW - Értünk mindenhez IS
- A tajvani chipgyártóknak is beteszi a kaput a Hormuzi-szoros lezárása
- Forradalomi előrelépésként jellemzi az NVIDIA a DLSS 5-öt
- Viccrovat
- További aktív témák...
- Kingston HyperX Fury 2x4GB 2133MHz DDR4 kit / Beszámítás OK! / Akciós Ár!
- ASRock B250M-HDV / MSI B150 PC Mate
- 250GB Sata SSD-k / Samsung 840 Evo / 850 Evo / CM871a / Kingmax /
- ASUS ROG G70S retro gamer laptop 17 dual GPU SLI ritka különlegesség
- Asus ROG Strix G731GT - 17.3"FHD IPS 120Hz - i7-9750H - 8GB - 512GB SSD - 1TB HDD - GTX 1650 - Win11
- LEXAR 32GB DDR4 3200 MHz laptop RAM
- RÉSZLETFIZETÉS.BANKMENTES.KAMATMENTES. Új noblechairs Epic valódi bőr FEKETE - FEHÉR 3 év garancia!
- Samsung Galaxy A23 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 16 128GB Bontatlan Független Összes Szín / 27% áfás ár
- GYÖNYÖRŰ iPhone XR 128GB Red-1 ÉV GARANCIA - Kártyafüggetlen, MS3984, 100% Akkumulátor
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest




