Jump to content

wethlo

Members
  • Content Count

    9
  • Joined

  • Last visited

Community Reputation

0 Neutral

About wethlo

  • Rank
    Newbie
  1. Habe den Code der Einfachheit halber und meiner möglichen Verständnissen wieder etwas vereinfacht und die zwei gewünschten "Replacec" ergänzt, welche nun auch funktionieren (hat zu kleinen Erfolgserlebnissen geführt;-) ).. Die von BofH_666 geschriebene und bis dato funktionierende Ergänzung funktioniert jetzt leider nicht mehr. Poste den Code mal in der Hoffnung, dass jemand Abhilfe leisten kann. $original_file = 'C:\Users\theo_\Documents\Seite_Rechts_2_1.xcs' $destination_file = 'C:\Users\theo_\Documents\Seite_Rechts_2_1.xcs' (Get-Content $original_file) | Foreach-Object { $_ -replace "SetWorkpieceSetupPosition\(0.0000, 0.0000, 0.0, 0.0\)","SetWorkpieceSetupPosition(5.0000, 5.0000, 0.0, 0.0)" } | Set-Content $destination_file (Get-Content $original_file) | Foreach-Object { $_ -replace "SetApproachStrategy\(true, false, -1\)","SetApproachStrategy(false, true, 2)" } | Set-Content $destination_file (Get-Content $original_file) | Foreach-Object { $_ -replace "SetRetractStrategy\(true, false, -1, 0\)","SetRetractStrategy(false, true, 2, 0)" } | Set-Content $destination_file $Ergaenzung = @' CreateNullOperation("Wegfahrschritt", 2000.0000, 0.0000, 1); ResetPneumaticHood(); ResetApproachStrategy(); ResetRetractStrategy(); '@ $ReplacedContent[0..($ReplacedContent.Length - 6)] + $Ergaenzung + $ReplacedContent[($ReplacedContent.Length - 5)..($ReplacedContent.Length)] | Set-Content -Path $destination_file -Force
  2. Guten Morgen! Wie gesagt, hier nochmals mein recht herzlichen Dank für die Lösung meines Problems! Habe gestern Abend noch versucht, zwei weitere für mich hilfreiche "Replacec" in dein programmiertes Skript zu schreiben, wobei ich allerdings kläglich gescheitert bin und die von Dir angesprochenen Frustrationen auslösten Den Rat mit den Video-Anleitungen über PowerShell nehme ich auf jeden Fall an und werde mich dahingehend weiterbilden. Falls jemand einem momentan noch in Sachen PowerShell überforderten Lehrer unter die Arme greifen möchte und die Ernte ein paar dankbare Schüler wären hier die zwei Replacec $_ -replace "SetApproachStrategy(true, false, -1)","SetApproachStrategy(false, true, 2) $_ -replace "SetRetractStrategy(true, false, -1, 0)","SetRetractStrategy(false, true, 2, 0) Danach werde ich selber versuchen, dieses Skript in das vom CAD-Hersteller bereitgestellte Skript einzubauen, in der Hoffnung, dass ich das hin bekomme
  3. Genial, es funktioniert alles so wie es sein sollte Das mit dem Extra-Dreh wäre nicht notwendig gewesen, die Werte sind quasi bei jedem Programm so, dass ich 5 in x und y brauche und die zwei beim 5. Argument. Respekt vor deinen Fähigkeiten!!!
  4. Selbstverständlich! Mach ich natürlich gerne! Vielleicht kann ich Dich mal unterstützen ein cnc-Programm zu schreiben;-)
  5. Vielen Dank für deine Bemühungen! Habe mal mit dem geänderten Skript rumprobiert... Wirft mir so leider Fehlermeldungen aus. Ich lade gleich mal eine XCS-Datei (Format, welches unser CAD-Programm ausspuckt) hoch, da kannst du Dir das mal anschauen. Die Dateien sehen quasi am Kopf und Fuß immer gleich aus. Da wird das Werkstück mit der Größe angegeben. Hierbei soll der Ursprung in x und y jeweils um 5 mm verschoben werden. Der String in dem das drin steht sieht immer gleich aus. Die vier Zeilen kurz vor dem Ende bewirken an der CNC, dass der Bumper um 2000 mm nach rechts fährt und das Werkstück wieder vom Tisch genommen werden kann. Diese Einstellungen kann man leider in der Software nicht einstellen. TEST01.txt
  6. Wie gesagt. Es handelt sich um unser CNC-Programm, welches Programme auswirft die mit den beschriebenen Inhalten ergänzt werden müssen. Wusste nicht, dass es sich hier um ein Forum nur für Profis handelt. Nach den vier einzufügenden Zeilen stehen immer die selben Zeilen. Sprich: Wenn diese dort eingefügt werden, wäre es perfekt.
  7. In meinem ersten Post stehen nach den besagten vier Zeilen, die am Schluss eingefügt werden müssen noch fünf weitere Zeilen, die da stehen bleiben müssen, sonst kapiert das CAM-Program die XCS-Datei nicht. Gibt es eine Möglichkeit, immer diese vier zeilen in die fünftletzte Zeile zu setzen? Das Skript funktioniert jetzt, bis darauf, dass jeweils 0.000 und 0.000 nach SetWorkpieceSetupPosition nicht durch 5.000 und 5.000 ersetzt wird. Besten Dank schon mal für deine Bemühungen!
  8. Guten Morgen! Vielen Dank für die schnelle Antwort. Bin wie gesagt noch ein Neuling in Sachen PowerShell, und habe mich mit Hilfe von Google zum Skript durchgeschlungen. Von dem her kann ich Dir die Frage mit den here-strings leider nicht beantworten Habe heute Morgen das Skript ausprobiert. Folgendes ist mir aufgefallen: In der xcs-Datei wird nun jede Zeile doppelt ausgegeben, was nicht Sinn der Sache ist... Was ebenso noch sein sollte: Die Ergänzung sollte nicht ganz ans Ende geschrieben werden, sondern beginnend mit der fünftletzten Zeile. Geht so etwas? Ich hoffe sehr. Es handelt sich um eine Datei, welche aus unserem CAD-Programm umgewurstelt bzw. ergänzt wird und dann CNC-tauglich ist, ohne nochmals das CAM-System zu öffnen. Natürlich werde ich in Zukunft die Skripte als Code formatieren!
  9. Guten Abend! Ich hoffe mir kann hier jemand helfen. Bin ein absoluter Neuling in Sachen PowerShell. Habe ein Skript geschrieben, welches mir Inhalte ersetzen soll. Die oberen zwei "Replaces" funktionieren. Das dritte leider nicht. Am Ende der Datei sollen folgende vier Zeilen CreateNullOperation("Wegfahrschritt", 2000.0000, 0.0000, 1); ResetPneumaticHood(); ResetApproachStrategy(); ResetRetractStrategy(); ergänzt werden. Die PowerShell-Datei sieht folgendermaßen aus: $original_file = 'C:\Desktop\TEST.xcs' $destination_file = 'C:\Desktop\TEST.xcs' (Get-Content $original_file) | Foreach-Object { $_ -replace "SetWorkpieceSetupPosition\(0.0000, 0.0000, 0.0, 0.0\);","SetWorkpieceSetupPosition(5.0000, 5.0000, 0.0, 0.0);" } | Set-Content $destination_file (Get-Content $original_file) | Foreach-Object { $_ -replace 'TypeOfProcess.Drilling, "-1", "-1", 0, -1, -1','TypeOfProcess.Drilling, "-1", "-1", 0, -1, 2' } | Set-Content $destination_file (Get-Content $original_file) | Foreach-Object { $_ -replace @" try { CreateMacro("PYTHA_PARK_2", "PYTHA_PARK"); } catch (System.Exception e) { } "@ , @" CreateNullOperation("Wegfahrschritt", 2000.0000, 0.0000, 1); ResetPneumaticHood(); ResetApproachStrategy(); ResetRetractStrategy(); try { CreateMacro("PYTHA_PARK_2", "PYTHA_PARK"); } catch (System.Exception e) { } "@ } | Set-Content $destination_file Über eine Hilfe würde ich mich sehr freuen!!!
×
×
  • Create New...