Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...
Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...
Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...
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