Új hozzászólás Aktív témák
-
raceboy
csendes tag
Hello
Egy olyan kérdésem lenne, hogy egy függvénytáblázatot, hogy lehetne hozzárendelni egy állapothoz? Mert az a gondom, hogy az egyik bool a másik byte és nem tudom, hogy lehetne megoldani, hogy felismerje és jól is működjön?
Előre is köszi -
Szirty
őstag
válasz raceboy #2604 üzenetére
Helló raceboy!
"Elküldtem privátban"
Leírtam privátban neked mi ezzel a baj. Itt nem részletezném.
Amit a problémával kapcsolatban az üzenetedből értettem (és itt nem a szavak önálló jelentésére az értelmezésére gondolok), az az alábbi:
- Világítás vezérlése plc-vel
- Van kézi és automata üzemmód
- Moeller ps4-341 plcAmit pedig nem értek:
- Mi (mennyi) az az "összes égő" amire hivatkoztál?
- Mit jelent a "gyenge gomb"?
- Mi az, hogy "M5 név"?
- Hol az a táblázat (mi a tartalma), amiben összefoglaltad?
- Mi a bool és mi a byte
- Miféle sorok és oszlopok vannak? -
raceboy
csendes tag
igen értem
Ez egy konferencia terem és vannak elől, hátul, középen és a vetítő mögött is égők. Az összes azt jelenti, hogy a fent leírt égők mind világítanak. A gyenge gomb azt jelenti, hogy egy vetítő üzemmódban ég vagyis gyengébben. Az M5 a kézi üzemmód neve. Ezek után vannak még gombok. A további állapotokba való lépésbe. Pl az m6 üzemmód azt jelenti, hogy az összes égő ég és az összes gombal kapcsolom be. A kev gombbal pedig kapcsolom át az m8-as állapotba. És ezen állapoton szeretném beállítani, hogy az elől, hátul, középen lévő égőket különböző gombokkal tudjam kapcsolni.
Deklaráláskor meg kell adni, hogy az állapot az bool, és a többi az byte.
A képet ide nem tudom, hogy kell feltölteni de az alábbi linken letölthető
A K1,k2... jelenti a kapcsolót. A felíratok pedig, hogy hol égne az égő.
Jancskárné tanárnő jegyzetében találtam hasonlót. Csak pontosan nem tudom, hogy lehet megvalósítani.
Előre is köszihttp://data.hu/get/5078919/IMG053.jpg
-
Szirty
őstag
válasz raceboy #2606 üzenetére
Helló raceboy!
Tehát ha jól értem, akkor azt szeretnéd, hogy abból amit leírtál előbb találjuk ki hogy mi a feladat, majd utána fejtsük meg azt... :]
Amúgy más sem érti, vagy csak én vagyok másik bolygón?
Vannak tehát gombok, nem tudjuk hány darab, de némelyikről tudjuk mit csinálnak ha megnyomják.
Aztán vannak kapcsolók is (K1, K2, K3, K4) amikről pontosan tudjuk, hogy 4 darab van, de azt nem, hogy mi a szerepük.
Meg van a kézi üzemmód, ami M5, bár azt nem tudjuk miért van kézi üzemmód, ha nincs automata (vagy van, csak nem tudjuk, hogy van és ha van azt sem, hogy akkor mit kell csinálnia a "valaminek").
Tudjuk, hogy az m6 már nem üzemmód, hanem állapot, amikor az összes égő ég, amit az összes gombbal kapcsolunk be. Bár az "összes gombbal bekapcsolni" jelentése nem egyértelmű nekem, mert:
- Megnyomjuk egyszerre az összes gombot (bár nem tudni mennyi az az összes)?
- Vagy megnyomjuk az összes gombot egymás után valamilyen sorrendben bármikor?No meg van az m8 állapot, ami meg már olyan állapot, hogy több állapot, hiszen különböző gombokkal az égőket kapcsolgatni lehet.
Tudjuk, hogy valamit deklarálni kell és hogy ebben az állapot bool a többi byte, bár nem tudom mi lehet az a "többi".Jancskárné tanárnő jegyzetére való hivatkozás ebben a formában sokat nem segített a feladat megértésében, mert nem közölted melyik kötet melyik oldalára kellene "gondolni".
A táblázatodban egyszerű bináris sorozat van, amit egy számlálóval is lehet produkálni. (A számláló "Kimenet" oszlopban található tartalmának megfelelő bináris minták vannak a 4 bites oszlopokban).
A K1-K4 oszlopok tartalma teljesen azonos az elöl, hátul, középen, vetítő oszlopokban található bináris mintával.A képet ide felrakni nem bonyolult. Ahova az üzenetet írod alatta 4 cm-re van egy felirat, miszerint: "Új kép feltöltése a szöveghez" mellette egy Browse gomb. na azt kell megnyomni, kiválasztani a képet, majd a generált linket berakni a "Kép" feliratú gomb megnyomása után.
Ui.: Gondolom ez egy iskolai példa feladat, mert a gyakorlatban ilyen világítás vezérlést szerintem sehol nem csinálnak... Az iskolai gyakorlati feladatokra pedig sajnos nagyon jellemző az ilyesmi.
-
raceboy
csendes tag
Hello Szirty
Igen ez egy iskolai feladat. Szakdolgozathoz kellene ezt megvalósítani. Autómata üzemmód természetesen van. Az működik is ez egy más ág. Feltöltöm az állapotgráfot hátha úgy egyszerűbb megérteni.
A K1, K2, K3, K4 azok gombok és azok azt csinálják, hogy elől, hátul, középen, vetítő mögött kapcsolják fel az égőket. És ezek variációi.
Ezt csak az m8-as állapotra vonatkozik. Vagyis ezek akkor fognak működni amikor az m8 állapotban kerül.
Valahogy bool to byte vagy esetleg más módszerrel, hogy lehetne?
Így érhető vagy még így se? -
Watchdog
aktív tag
válasz raceboy #2608 üzenetére
Szia raceboy!
Valahogy így kell felépíteni a logikát:
LD M8
AND K1
S L1 (* elöl bekapcsol *)LD M8
ANDN K1
R L1 (* elöl kikapcsol *)Nyilván csak úgy van értelme, ha biztosított, hogy az M8-on kívül a többi állapot / üzemmód 0.
A bool változók a deklarációs részben szervezhetők bájtba:
(Möllernél valahogy így néz ki, más PLC-n máshogy...)
VAR
Kapcsolok AT %IB0.0.0.0 : BYTE ; (* az első 8 bemenet a PLC-n *)
K1 AT %IB0.0.0.0.0 : BOOL ; (* a Kapcsolok bájt 0. bitje, de már BOOL típus *)
K2 AT %IB0.0.0.0.1 : BOOL ; (* a Kapcsolok bájt 1. bitje *)
stb., ugyanez a kimeneteknél is.
END_VAR -
gergesu
csendes tag
Sziasztok,
UNITRONICS programozót keresek néhány megbízásra, lehetséges a jövőben több is. Légy szíves küldjetek elérhetőséget!
Kösz!
Ui.: Kösz Gugli!
Kösz RIOS! -
qwaqay1
csendes tag
Sziasztok
Segítségre lenne szükségem. Siemens s7 200-as plc-m van (cpu 222), amit hobbi szinten programozok, a digitális be és kimenetekkel nincs is gond. Nemrég sikerült beszereznem analóg bemeneti modult, analóg kimeneti modult és 1db Pid modult. Sajnos az analóg jelről csak annyit tudok,hogy 0-20mA vagy 4-20mA vagy 0-10V között lehet.
Az internetem próbáltam hozzáprogramozási példákat keresni, de nem sikerült.Első lépésként valami,olyan programot szeretnék írni, hogy digitális bemenetekre adott kapcsolásokra különböző analóg kimenetek keletkezzenek.
Például: Q0.0 = 1V vagy 2mA , Q0.1 = 2V vagy 4mAEz megoldható?
Megköszönném, ha valaki segítene. -
Szirty
őstag
válasz qwaqay1 #2613 üzenetére
Helló qwaqay1!
Az AQ területre kell írni hogy az analóg kimenetre értéket küldj (AQW n).
S7-200 Programozható vezérl rendszer Kézikönyv 44. oldal.
Pl. MOV_W utasítással tudsz bele értéket írni...
-
qwaqay1
csendes tag
-
Szirty
őstag
válasz qwaqay1 #2615 üzenetére
Hali qwaqay1!
"Ez azt jelenti ,hogy cpu222 01.11 verziójú plc-mel nem lehet analóg kimenetet működtetni?"
Nem hiszem hogy ne lehetne.
Az output tables nem arról szól. Az output tables arra való, hogy meghatározd mi történjen az analóg kimeneten lévő értékkel, amikor a CPU RUN módból STOP módba vált.
A 02.00 verziójú PLC-nél lehetőséged van arra, hogy STOP-ra váltáskor az analóg kimenet befagyassza az értéket ami épp akkor volt, vagy beírhatod hogy ilyenkor mit küldjön ki.
A 01.11-es verziójú CPU meg nem tud ilyen funkciót, az nyilván nulla értéket küld ki ilyenkor. De attól analóg kimenetet még tud kezelni. -
qwaqay1
csendes tag
Értem, a kézikönyv 44. oldalát néztem nem a tényleges 44. oldalt.
Szóval MOV W.
In és az OUT -hoz miket lehet beírni?Hogy lehetne egy olyan programot írni, hogy I0.0 digitális bemenetre adott jelre az analóg 0.0 kimenetére mondjuk 3V-os jel, I0.1-re adottra 5V-os jel és I0.2-re 10V analóg jelet csináljon az analóg kimenetre.
Sajnos analóg jelekre még sosem programoztam. Segítségedet előre is köszönöm.
-
Szirty
őstag
válasz qwaqay1 #2617 üzenetére
Hi qwaqay1!
"Szóval MOV W.
In és az OUT -hoz miket lehet beírni?"A már említett kézikönyv 177. oldala épp erről szól.
A MOVE adatmozgató utasítás. Az In-hez írt adatot átrakja az out-hoz írt címre.
Az in lehet cím vagy konstans, az out pedig cím.Az analóg kimenet egy 16 bites regiszter. Az analóg kimeneten mérhető feszültség vagy áram arányos az analóg csatorna címére írt értékkel. 0V-ot 0 beírásával tudsz produkálni 10V-ot az értékmaximum beírásával (ami halvány fogalmam sincs mennyi S7-200 esetében, de S7 300/400-nál ez jellemzően 27648).
"Hogy lehetne egy olyan programot írni, hogy I0.0 digitális bemenetre adott jelre az analóg 0.0 kimenetére mondjuk 3V-os jel, I0.1-re adottra 5V-os jel és I0.2-re 10V analóg jelet csináljon az analóg kimenetre."
Minden lépcsőhöz írsz egy megfelelő MOV_W utasítást a kívánt analóg jelnek megfelelő konstanssal a MOVE IN oldalán és a kívánt analóg kimenet címével a MOVE OUT oldalán.
A MOV_W utasítás elé (EN) pedig berakod a megfelelő feltételt, jelen esetben az I0.1, I0.2 stb bemeneteket.
Úgy kell megvalósítani, hogy mindig csak az egyik MOV_W utasítás előtti feltétel tudjon teljesülni.
Hogy ezt miképpen csinálod az attól függ milyen elsőbbségi sorrendet szeretnél felállítani arra az esetre, ha egyszerre egynél több bemenet is aktív (mivel egyszerre egynél több feszültség vagy áram nem lehet jelen egy kimeneten). -
Szirty
őstag
válasz qwaqay1 #2619 üzenetére
Helló qwaqay1!
Az a körülbelül 32000 valószínűleg pontosan 32767 lesz.
Ennek az integer típusú számábrázolás az oka. Te egy 16 bites értéket írsz az analóg kimenet regiszterébe.
16 biten 65536 féle bit kombináció lehetséges. Hogy negatív érték is ábrázolható legyen, kitalálták az integer számábrázolást, ami az előbbi tartományt két részre osztja:
Egy pozitív tartományra: 0..+32767
és egy negatívra: 0..-32768
Bizonyos okokból (aminek utána lehet nézni ha részletesen érdekel) a negatív tartomány kettes komplemens alapú, ami kb. annyit tesz, hogy a negatív szám abszolút értékének bináris mintája azonos a hozzá tartozó pozitív érték inverzével.
Ha megpróbálsz 32767-nél nagyobb értéket beleírni, akkor túlcsordul és az érték negatív lesz (pl.: 32777 -32759-nek felel meg). -
peterx88
csendes tag
Sziasztok, valaki nem tudja, hogy a képen látható nullás utasítás ami a programban majd lentebb folytatódik (a kettő közt még van jó néhány utasítás) az mit jelent? neten nem találtam semmit. Azt hittem valami jump, de nem vagyok benne biztos. Ez egy mitsubishi PLC
Köszi[ Szerkesztve ]
-
vopi86
csendes tag
Sziasztok! Még új vagyok a fórumon. Üdvözlök mindenkit!
Olyan kérdéssel fordulok hozzátok, hogy lenne-e esetleg itt olyan emberke,
aki vállalna néhány órás "korepetálást" omron cpm1/2 plc programozásból...
Pesti vagyok, légyszi magánba írjatok, megbeszéljük a részleteket...
Köszi! -
Watchdog
aktív tag
válasz raceboy #2626 üzenetére
Helló raceboy!
A megoldás a TON (bekapcsolás késleltetés) típusú időzítők használata lesz. A lámpa bekapcsoló (SET) programrészek rendben vannak, a lámpa kikapcsoló (RESET) programrészekbe kell beilleszteni egy-egy időzítőt. Ha az M8 üzemmódban elengedik a gombot, az időzítő kimenete "t" idő múlva logikai 1-be megy. Az időzítő bemenetére az kerüljön, hogy M8 üzemmódban nem nyomják a gombot, a kimenetével pedig resetelni kell a megfelelő lámpát. A bemenet közvetlenül a logikai feltételek után az "ST Időzítőneve.IN" utasítással érhető el. Az időzítőket deklarálni kell, majd a CAL Időzítőneve(attributumok) formában illeszthetők be. Az időzítő kimeneti bool jelét a reseteléshez úgy tudod kiolvasni, hogy "LD Időzítőneve.Q".
Ezzel a megoldással úgy fog viselkedni a vezérlés, hogy ha bekapcsolt lámpával váltasz üzemmódot, akkor az új üzemmód feltételrendszere szerint marad égve, vagy alszik ki a lámpa (ha pl. égő lámpával kerül M8 üzemmódba, akkor "t" idő múlva kikapcsol).[ Szerkesztve ]
-
Watchdog
aktív tag
válasz raceboy #2628 üzenetére
Üdv!
LD M8 (* csak ebben az üzemmódban figyeli a gombot *)
ANDN ME2 (* ME2 nevű gomb bemenet *)
ST T1.IN (* nem S - azaz set, hanem ST - azaz store *)
CAL T1 ( IN := , PT := T#10s | := Q , := ET ) (* ezt nem kell fejből begépelni, gyorsmenüből is be lehet szúrni, már nem emlékszem, hogy - tán F2??? a help-ben biztos benne van... én egy kiexportált programrészből másoltam ki, nincs a gépemen a fejlesztő... *)LD T1.Q (* ha M8 üzemmódban, T1 ideje a gomb elengedve *)
R F1 (* az F1 nevű lámpa kimenet kikapcsol *)A zárójeles részen belül közvetlenül is hozzá lehet rendelni bool változókat az időzítő be/kimenetekhez, bonyolult program esetén megéri felvenni párat. De S/R, vagy más logikai összefüggés nem lehet a zárójelen belül.
-
raceboy
csendes tag
Hello
Moeller plc-nél a rendszer időt (év, hó, nap, +óra és perc) hogyan lehet lekérdezni? mert össze szeretném hasonlítani egy konstansban megadott dátummal, azt tudom, hogy EQ-val kell, csak a lekérdezést nem találtam. -
Szirty
őstag
Hali vopi86!
Kapcsolókon meg LED-eken kívül olyasmit köthetsz rá, ami "csinál valamit". Pl. szelepet, motort, ami mozgat valamit, aminek a helyzetét érzékelő érzékeli, ami bemenetre megy.
Tehát építesz köré egy gépet, amit majd a megírt programmal vezérelsz. A PLC erről szólA LED-ek és kapcsolók szintjéig könnyen el lehet jutni PLC nélkül is PLC szimulátor programmal. Ugyanúgy világít egy kimenet és egérrel kapcsolgathatod a bemeneteket.
Egy másik megoldás lehet valamilyen szimuláció, ami a vezérelt gépet (vagy egy részét) szimulálja. Készen ilyet omronra nem tudok, de készíteni a megfelelő szoftver környezetben biztosan lehet. Ezzel csak az a gond, hogy a szimulációs környezet kialakítása mindig sokkal nagyobb munka, mint annak a berendezésnek a programozása, a PLC-ben, amit szimulálsz.
A CIF01-es problémával kapcsolatban annyit tudok mondani, hogy fontos beállítások a következők:
- A PLC és azon belül a CPU beállított típusa a projectben
- A SYSMAC WAY-re állított kommunikációs mód
- A network settings-nél a Host Link Unit Number
- A network settings-nél a Port Name, Baud rate (asszem 9600), data bits 7, Parity E, Stop bits 2Jah és a Device Name ne tartalmazzon ékezetes karaktereket lehetőleg, mert így járhatsz:
[ Szerkesztve ]
-
Csakénvagyok
őstag
Szia Szirty és vopi86
Pl. szelepet, motort, ami mozgat valamitEvvel csak az a gond hogy pneumatikát és/hidraulikát nehéz/költséges építeni hobby szinten. Én inkább elektromos motorokat javasolnék, kisteljesítményű egyenáramú motorokat viszonylag olcsón lehet beszerezni, analóg I/O hiányában, ahogy nézem az alap PLCt, nehezebb a sebesség változtatása, megoldás lehet az impulzusokban való vezérlés, nem igazán javasolnám, főleg relés kimenetnél, vagy a feszültséget is lehet változtatni, ellenállásokkal és potméterekkel.
-
qwaqay1
csendes tag
Sziasztok
Az alábbi programot töltöttem be az s7 200- as plc-mbe. Egy 8Xanalóg bemeneti modou és egy 4X analóg kimeneti modul van rá csatlakoztatva.
A AQW0 kimeneten 7.8V feszültség keletkezik amit az analóg bemenet A- és A+ -ra kötöttem.
Csak ennyit csináltam a program csak a látható 2 Networkből áll.A kimeneti jel megvan, de AIWo értéke nem változik.
Sajnos nem értek hozzá, segítene valaki? Abban sem vagyok biztos, hogy így kell analóg jelet érzékelni.
-
qwaqay1
csendes tag
válasz Csakénvagyok #2635 üzenetére
Akkor rossz úton járok.
Tudnál olyan programot amivel kitudnám próbálni az analóg bemeneti modult.
-
vopi86
csendes tag
Sziasztok!
A csatlakozás probléma úgy oldódott meg, hogy CQM1-es PLC-t állitottam be és toolbus kapcsolatot. Így felcsatlakozozz a PLC-re, viszont oldalt az IO table menüt valamiért nem tette ki....ez miért lehet?
Másik: van omron e3t-fd13 fotoérzékelőm, 3 szál lóg ki belőle...ezt sejtem hogyan kellene bekötni (kék-barna a + és - 24V, a fekete pedig a 00-ás bemenetbe)
kimenetre pedig vann omron g3r-202sn relém, ezt foggalmam nincs hogy kellene bekötni..
Ilyesmibe tudnátok segiteni?Köszi,
VOPi -
levelko
csendes tag
Hello!
A bemeneti led-nek a kommunikációtól függetlenül is világítania kellene, feltéve ha jó helyre kötötted azt a bizonyos fekete vezetékét a szenzornak. Az sem mindegy hogy a PLC milyen bemenetű. PNP vagy NPN. Nyilván ha a kártyád (+) jelet vár a benetére, akkor egy NPN-es szenzor nem fog produkálni semmit, legfeljebb a szenzor világít de a bemenet nem.
A másik a mi nem világos, hogyan látja a CPM1 cpu-dat a cx-programmer, ha CQM-1-et állítottál be? Már csak ezért is mert az előbbi egy kompakt plc beépített ki- bemenetekkel és bővítési lehetőséggel, míg az utóbbi agy moduláris plc amelyhez lényegesen szélesebb skálán lehet kártyákat csatlakoztatni.Üdv L.
[ Szerkesztve ]
levelko
-
vopi86
csendes tag
válasz levelko #2639 üzenetére
Szia Levelko!
Valami az usb-soros átalakítással lehet, mert egy ismerősöm régi laptopjára (amin van com port) csatlakoztatva felmegy online módba és nem ír hibát.... Tehát ott tudom használni.. Érdekes. A bekötést is sikerült megcsinálni, a bemenetre egy fotoérzékelőt tettem, a kimenetre pedig egy led-et, közé egy roppant bonyolult plc programot.. Nagyon jó.
Most gondolkozom valami komolyabb dolgon, lehet veszek egy 24V-os motort, kapcsolókat a bemenetekre... Mindenesetre legalább már tudom, h jó a plcm... -
vopi86
csendes tag
Sziasztok!
Úgy néz ki, hogy sikerült kapcsolatot létesítenem a CPM1 PLC-vel....
(Bemenetre egy fotoérzékelőt tettem, kimenetre egy ledet, működik.)Következő próbálkozásom a következő:
Omron E3S-5B41 fénysorompó... Olyat szeretnék csinálni vele, hogy
valahányszor áthaladnak rajta, azt számolja és késöbb egy kijelzővel kiiratom.
Ezt meg tudom csinálni, tudtok segiteni?Köszi,
VOPi -
-
levelko
csendes tag
Hello!
Én az OMRON M7E-01DRGN2 típusú kijelzőt használtam. Ez piros és zöld színben tud kijelezni, egy bemenetének átkapcsolásával. A gépben amelyre beszerelésre került zölddel jelzi ki a használt termék számát normál üzemben. Hibajelzéskor pedig pirosra vált, de ez csak programozás kérdése hogyan használjuk.
A második kérdésedre pedig: A CX-ONE programban van HMI programozó szoftver (cx-designer) de ez sajnos ehez a panelhez nem jó. Erre ott van az NQ designer. kb 127Mb
Üdv.
levelko
-
vopi86
csendes tag
válasz levelko #2645 üzenetére
Hello. Omron fénysorompó működik, ha a két szenzor közé kerül valami, akkor megszakad a kör. Most egy omron h7ec-n számlálót szeretnék hozzáépíteni. Proba kedvéért, amikor mondjuk megszakad a fénysorompóm, akkor léptessen egyet a számláló. Ezt hogyan tudom megcsinálni? Esetleg vmi kódrészletet tudnátok mutatni, hogy hogyan is nézni ez ki a CX-programmerbe?
Köszi,
VOPi -
levelko
csendes tag
Hello!
Ehhez még PLC sem kell, mert csak egy kontaktussal számol előre. De lehet mondjuk ilyen:
Itt ha megszakad a fénykapu, akkor 0.5 sec-ig ad egy inpulzust a kimenetre, ez elég hogy egyet (és ne többet) számoljon. Ha relés kimenetet használsz, akkor a számlálót érdemes 30Hz-re kapcsolni.
Üdv.
levelko
-
Szirty
őstag
Hali vopi86!
"Esetleg a CX-Programmerhez nem tudtok valami leírást ami az instruction-ökről szól?"
HELP menüt láttad már?
Help / Instruction reference. Minden egyes utasításról van benne részletes leírás, de még példaprogram is!
Neked egyébként inkább a PLC-hez kell ilyen leírás és nem CX-Programmerhez, mert az utóbbi többféle előbbit is ismer és ezek utasításkészlete eltérő.
Új hozzászólás Aktív témák
- Kínai, és egyéb olcsó órák topikja
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Autós topik
- YouTube
- Mazda topik
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- DIGI kábel TV
- LEGO klub
- Rezsicsökkentés, spórolás (fűtés, szigetelés, stb.)
- Xiaomi Redmi Note 5 Global
- További aktív témák...