01.03.2013 Aufrufe

Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...

Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...

Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Da die Ausführung der CNC- Kommandos in der Simulation und die<br />

Kollisionserkennung, abgesehen von der benötigten Rechenzeit, keine Zeit in<br />

Anspruch nehmen, wird die Simulation für den Fall delay_time = ∆t nahezu in<br />

Echtzeit ausgeführt. Wird delay_time größer bzw. kleiner gewählt, so<br />

verlangsamt bzw. beschleunigt sich die Ausführung der CNC- Simulation.<br />

Abbildung 4-16 zeigt einen Ausschnitt der Implementierung der Ablaufsteuerung.<br />

Die CNC-Programme und die Kollisionskontrolle werden dabei in<br />

einem eigenen Prozess (Thread) ausgeführt.<br />

Thread thread = new Thread() {<br />

}<br />

public void run() {<br />

}<br />

...<br />

// main loop<br />

while (!allProgramsDone()) {<br />

}<br />

...<br />

...<br />

// CNC- Programme schrittweise ausführen<br />

for (int i = 0; i < cncPrograms.length; i++)<br />

cncPrograms[i].step(emulation_resoultion);<br />

// Kollisionserkennung<br />

if (collisionDetectionEnabled)<br />

checkCollisions();<br />

// Verzögerungszeit<br />

sleep(delay_time);<br />

...<br />

Abb. 4-16 Thread der Ablaufsteuerung<br />

Es sei an dieser Stelle darauf hingewiesen, dass selbstverständlich auch der Fall<br />

eintreten kann, dass ein CNC-Kommando eine Laufzeit kleiner ∆t hat. Dies<br />

wird von der Ablaufsteuerung berücksichtigt.<br />

80

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!