SCL programmeren

Status
Niet open voor verdere reacties.

gerbertt1990

Gebruiker
Lid geworden
11 mrt 2008
Berichten
160
Hallo,

Ik ben sinds kort begonnen met SCL programmeren en dat mag ik dan omzetten in FBD. (erg onduidelijk dat SCL)
Nu kwam ik dit tegen:
IF Ao>cFullRange THEN Ao := cFullRange;
ELSIF Ao<0 AND NOT iBip THEN Ao := 0;
ELSIF Ao<-cFullRange THEN Ao := -cFullRange;
END_IF;

Vraag 1: Wat betekend het steepje '-' voor cFullRange?
Vraag 2: De 2e elsif, is die van toepassing op allereerste IF, of de 1e elsif?

Groeten,

Gerbert
 
Laatst bewerkt:
Vraag 1: Wat betekend het steepje '-' voor cFullRange?

ik ken SCL niet maar ik het het opgezocht en hier staat dat in hello world je send message ook zo kan schrijven :-.
Hello World voorbeeld
. verder heb ik niet echt informatie kunnen vinden :(.
ik ben erachter gekomen wat SCL betekent System Control Language.
Waar staat FBD voor??

Vraag 2: De 2e elsif, is die van toepassing op allereerste IF, of de 1e elsif?

Deze heeft betrekking tot de 1e elsif.

Byee VRC
 
Ik moet SCL omzetten in PLC taal Function Block Diagram.

En dit streepje voor: -cFullRange
Ik heb het idee dat het iets van het 'omgekeerde' is, of 'gelijk aan' betekend.

Eerst dit; IF Ao>cFullRange
Dus Ao groter dan cFullRange,

Dan dit: Ao<-cFullRange


In de bijlage een help overzichtje die ik net tegen kwam in het programma..
 

Bijlagen

  • overzicht1.JPG
    overzicht1.JPG
    36,5 KB · Weergaven: 169
Laatst bewerkt:
goed, ik ken geen van deze talen, maar dat is niet het punt. Hier
Code:
IF Ao>cFullRange THEN Ao := cFullRange;
ELSIF Ao<0 AND NOT iBip THEN Ao := 0;
ELSIF Ao<-cFullRange THEN Ao := -cFullRange;
END_IF;
staat, in gewoon nederlands:
Code:
als getal Ao groter is dan getal cFullRange dan
   maak Ao gelijk aan waarde cFullRange
anders als Ao kleiner dan 0 is en niet iBip dan     //<-- zie hieronder
   maak Ao gelijk aan 0
anders als Ao kleiner is dan -1 * cFullRange dan
   maak Ao gelijk aan -1 * cFullRande
einde als
Ofwel, de - (minteken) maakt er een negatief getal van, wat dus in simpele wiskunde getal * -1 is.

Nu, het comment:
de regel
Code:
ELSIF Ao<0 AND NOT iBip THEN Ao := 0;
kan 2 dingen betekenen. Als iBip een booleanse waarde is (true of false) draait het 'NOT' het alleen om (true wordt false, en andersom). Het 2e wat het kan betekeken is dat het wel met getallen werkt, maar hoe precies is mij niet duidelijk (het ligt aan de taal).



:thumb:
 
Laatst bewerkt:
Ik ben er eindelijk een beetje thuis in.

Code:
ELSIF Ao<0 AND NOT iBip THEN Ao := 0;
IBip was een BOOL idd. Dus 1 of 0.

Code:
THEN Ao := -cFullRange;

Hier wordt idd cFullRange negatief gemaakt.
Wat een lelijke programmeer taal:confused:

Bedanktt :thumb:
 
Nou, tjsa. Het is maar wat je lelijk vind he? Ik bedoel, met van die extreme dingen als CAPS voor structures enzo gaat het er vanzelf lelijk uitzien, maar zoveel verschil is er met bijvoorbeeld BASIC niet hoor. Then again, basic is ook 'lelijk'... ;)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan