if-while?

Nederlandse CNC controller op basis van de usb poort of Ethernet.

Moderator: Moderators

Plaats reactie
Gebruikersavatar
andrefc101
Donateur
Berichten: 3733
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

if-while?

Bericht door andrefc101 »

Ik heb op mijn freesspindel 2 sensoren. Een gebruik ik om het toerental van de spindel aan EdingCNC door te geven, de andere wil ik gebruiken om de spindel op een bepaalde stand te laten stoppen voor een toolchange.
Met M56P6 kan ik deze waarde van de sensor uitlezen, normaal is deze 0, wanneer de sensor het slot in de schijf tegenkomt wordt deze waarde 1. Nu wil ik in een sub de spindel starten met M3S100, de sensor uitlezen, M56P6, en wanneer de waarde 1 wordt de spindel met M5 te stoppen. Kan dit in een while-endwhile?
Gebruikersavatar
jimbo
Berichten: 80
Lid geworden op: 27 jan 2013 22:36
Locatie: Anderlecht
Contacteer:

Re: if-while?

Bericht door jimbo »

Hier kan ik ook eens op antwoorden... :P
Ik ken wel de programeertaal / macro taal van Eding niet maar 't zal er zo wel moeten uitzien :

'definieer variabele_M56P6

' initialiseer variabele
variabele_M56P6 = 0

While variabele_M56P6 <> 1
Do something... (wachten misschien dus sleep(10) 10 milliseconden wachten)
' lees variabele opnieuw uit
variabele_M56P6 = lees_M56P6
Endwhile

de lus stopt wanneer de variabele de waarde 1 bereikt heeft

Mvg,
Jim
Gebruikersavatar
audiomanics
Donateur
Berichten: 5273
Lid geworden op: 28 feb 2007 09:31
Locatie: Appelscha
Contacteer:

Re: if-while?

Bericht door audiomanics »

Ik zou niet weten waarom niet.. maar het is geen multitasken dus kan het ding in die tussentijd niets anders doen dan wachten.
Nu weet ik niet hoeveel die spindel doordraait na M5... die M3S100 is misschien al rijkelijk snel.
Misschien dat een lusje met M3 en M5 (dus heel heel kort aanzetten en direct weer uit zodat er een echt maar een heel klein stapje gemaakt wordt) ook zou werken.. eventueel moet er dan tussen de M3 en M5 een korte pauze komen als de motor helemaal niet gaat draaien.. Het gevolg is dat hij naar de juiste positie toejuttert, ipv een zwieper krijgt..
trial en error, brother!!
Kees
<klik>... euh..test... 123.... einde test... uit.<klik>
Gebruikersavatar
hugo stoutjesdijk
Donateur
Berichten: 12053
Lid geworden op: 02 mar 2011 17:04
Locatie: elst (u)
Contacteer:

Re: if-while?

Bericht door hugo stoutjesdijk »

Maar hoe draait die spil 100 toeren, door een overbrenging ? En de motor zelf draait die dan 600 toeren of zo.
die remt niet zomaar naar 0. (met z'n massa)
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
Gebruikersavatar
andrefc101
Donateur
Berichten: 3733
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: if-while?

Bericht door andrefc101 »

De motor draait op een Danfoss VLT6008. Deze remt de motor af. Als ik deze 100rpm laat maken, en ik druk op M5 stopt deze echt direct. Als het te snel gaat kan ik idd ook met 50 toeren proberen, trial and error idd ;-).
Als de motor niet op het goede punt stopt kan je deze door laten draaien met een dwell, dus G6P0.50
Weer proberen tot deze op de goede plaats stopt….
Zal morgen eens wat proberen met een while-endwhile lus.
In Eding taal zoiets denk ik:

sub set_spindle
#5399 = 0 ; #5399 is de parameter waar de waarde van input 6 in terecht komt, deze moet dus 1 worden.
M3S50
while [#5399 = 1]
M56P6 ; lees input 6 uit, zet de waarde in #5399
endwhile
G4P0.4
M5
endsub
Laatst gewijzigd door andrefc101 op 02 apr 2015 21:47, 1 keer totaal gewijzigd.
Gebruikersavatar
hugo stoutjesdijk
Donateur
Berichten: 12053
Lid geworden op: 02 mar 2011 17:04
Locatie: elst (u)
Contacteer:

Re: if-while?

Bericht door hugo stoutjesdijk »

Dan zou je met die sensor op de spil ook de Danfos kunnen laten stoppen.
Moet je die functie alleen via een uitgang activeren.
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
Gebruikersavatar
audiomanics
Donateur
Berichten: 5273
Lid geworden op: 28 feb 2007 09:31
Locatie: Appelscha
Contacteer:

Re: if-while?

Bericht door audiomanics »

Als #5399 een 1 wordt op het goede moment zou ik die lus wel anders maken... namelijk:

while [#5399 = 0]
endwhile
M56P6 ; lees input 6 uit, zet de waarde in #5399

Zo blijft hij in die wachtloop en pas als #5399 een 1 wordt spring hij er uit en voert die M56P6 uit en daarna de rest van het programma..

Kees
<klik>... euh..test... 123.... einde test... uit.<klik>
Gebruikersavatar
andrefc101
Donateur
Berichten: 3733
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: if-while?

Bericht door andrefc101 »

audiomanics schreef:Als #5399 een 1 wordt op het goede moment zou ik die lus wel anders maken... namelijk:

while [#5399 = 0]
endwhile
M56P6 ; lees input 6 uit, zet de waarde in #5399

Zo blijft hij in die wachtloop en pas als #5399 een 1 wordt spring hij er uit en voert die M56P6 uit en daarna de rest van het programma..
Goed verhaal, maar volgens mij kan #5399 pas 1 worden als deze middels M56P6 uitgelezen wordt.
Als de input niet uitgelezen wordt zou deze loop best wel eens lang kunnen gaan duren……
Of ik moet het helemaal niet snappen, kan natuurlijk ook ;-)
Gebruikersavatar
audiomanics
Donateur
Berichten: 5273
Lid geworden op: 28 feb 2007 09:31
Locatie: Appelscha
Contacteer:

Re: if-while?

Bericht door audiomanics »

Ok, in dat geval moet je de loop zo maken als jij geschreven had met dat verschil dat de waarde in het while-lus herhaald moet worden zolang die waarde 0 is en niet 1 .. Ik had me nog niet verdiept in #5399..
Kees
<klik>... euh..test... 123.... einde test... uit.<klik>
Gebruikersavatar
andrefc101
Donateur
Berichten: 3733
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: if-while?

Bericht door andrefc101 »

audiomanics schreef:Ok, in dat geval moet je de loop zo maken als jij geschreven had met dat verschil dat de waarde in het while-lus herhaald moet worden zolang die waarde 0 is en niet 1 .. Ik had me nog niet verdiept in #5399..
Kees
Het werkt hoor Kees, met deze code:

M3 S50
G4P2
while [#5399<>0]
M56 P6
endwhile
M5

Spindel stopt precies op de goede plek…… keer op keer.

Op naar de volgende uitdaging ;-)
Gebruikersavatar
audiomanics
Donateur
Berichten: 5273
Lid geworden op: 28 feb 2007 09:31
Locatie: Appelscha
Contacteer:

Re: if-while?

Bericht door audiomanics »

Mooi man...

Kees
<klik>... euh..test... 123.... einde test... uit.<klik>
Plaats reactie