beste,
ik ben bezig met een plc progrogramma dat een verwarming aan stuurt. deze verwarming wil ik door middel van een pid regeling laten aansturen.
heb nu een siemens s71215c dcdcdc
en een ssr ralais.
heb via de pid temp. de pwm poort q0.0 en in de config heb ik pwm aan gevinkt.
maar op ene of andere manier krijg ik hem niet werkend. de pid zelf lijkt wel te doen. en als die zegt dat de pwm bezig is. zie ik op de plc geen lampje aan gaan van de schakeling. ook meet ik dan niks met multimeter.
heb ook blok ctrl pwm geprobeerd. en ook daar gingen er geen lampje aan van de plc.
vraag mij af wat ik hier verkeerd doet.
alvast bedankt voor de reacties
Ik ben geen expert, dus ik kan fout zitten, maar ik denk dat je zelf het een en ander kan proberen
de PWM output van de PID_TEMP is een BOOLEAN, een aan of uit puls
De PWM output van de PLC, Q0.0 die jij heb geselecteerd als PWM output verwacht niet het aan of uitsturen van Q0.0 op het moment dat jij deze als PWM instel, maar op het moment dat je deze instelt als PWM functie, kan je hem aansturen met de PWM blokken van de tia library.
Dit betekend of:
CTRL_PWM: het enablen van het aansturen van een PWM output volgens voor ingestelde waardes in de device configuratie. Dit betekend dus dat je dit kan gebruiken om een PWM puls te genereren met een vast ingestelde frequentie op het moment dat je de ingang van CTRL_PWM hoog maakt.
CTRL_PTO: Deze instructie wordt gebruikt voor het maken van een PWM signaal met een preset frequentie- deze frequentie bied jij aan aan de ingang van het blok. Met de juiste parameters kan je dit blok gebruiken om de PWM uitgang aan te sturen met een gekozen frequentie. echter volgens mij heb je hier een bepaalde firmware versie van de PLC voor nodig.
Misschien werkt het als je output Q0.0 niet als PWM aanvinkt- en de PWM output van de PID_TEMP direct naar Q0.0 linkt
Een andere optie is om de PWM functionaliteit van Q0.0 wel te gebruiken, maar zelf de parameters schrijven:
ga naar hardware config om de PWM output in te stellen, dit heb jij al gedaan. zorg dat het op PWM staat. als je de PWM puls frequentie wil laten regelen door de PID, check je onder overview of adresses welke output adress je puls tijd zit: voor PWM1 is dit standaard QW1000 (zie hoofstuk 8.6 van de s7-1200 manual
enable de PWM in je programma met CTRL_PWM
Gebruik de OoutputHeat of OutputCool real waarde en schalleer deze naar een waarde die 0-100% van je duty cycle is. Als je Pulse duration format een honderste is, betekend dit dat je van 0 tot 100 moet schaleren, voor duizendsten 0 tot 1000 en zo voort. Je kan waarschijnlijk de schalering van je PID output ergens instellen, of het is default 0-100? geen idee.
Zorg dat de REAL van OutputHeat of OutputCool naar een INT formaat word geconverteerd, en gebruik een MOVE instructie om deze naar QW1000 te sturen terwijl CTRL_PWM de PWM output enabled.