Witam,
Opis problemu:
Pracuję przy programowaniu obrabiarek CNC(obecnie - jeśli ktoś chciałbym zerknąć - Felder Profit H22). W firmie mamy system naklejek na płytach, gdzie znajduje się nazwa programu, który trzeba odczytać i wrzucić na maszynę. Obróbka przebiega bardzo sprawnie jednak proces wrzucania programów jest uciążliwy, ponieważ trzeba przerzucać płyty przepisać programy(ręcznie) i wrzucić w listę na obrabiarkę.
Rozwiązanie:
Znalazłem skaner kodów kreskowych: Symbole LI4278. Oprogramowanie od producenta(obrabiarki) umożliwia tworzenie list z programami, chciałbym aby po wczytaniu kodów przez czytnik tworzyły się listy programów, które można wrzucić na obrabiarkę.
Problemy:
Skaner działa, jednak po podłączeniu przez USB funkcjonuje jak emulacja klawiatury - wrzuca kody w plik tekstowy, który został właśnie otworzony. Znalazłem podobny problem tutaj. Skaner musi pracować w tle, jednak dochodzi jeszcze problem generowania plików. Poniżej zamieściłem kod pliku listy,
który wrzucam na obrabiarkę, 11111front_test1111.TCN program, który został wrzucony. Skaner musi uzupełniać nazwy programów, chciałbym aby zapis odbywał się przez podwójne zeskanowanie ostatniego kodu z listy. Dodatkowo chciałbym, aby automatycznie zmieniała się baza w programie, ale to zrealizuje analogicznie do tego.
Zapytanie:
Czy coś takiego jestem w stanie zrealizować w Pytonie? Ktoś miał podobny problem lub zajmował się skanerami kodów kreskowych? A może będzie mi to lepiej zrealizować w innym języku?
Z góry dziękuję za pomoc i sugestie.
<?xml version="1.0" encoding="utf-8"?>
<List>
<Rows Name="123.xmlst" Repetitions="1" TL="0" TH="0" TS="0" Criterion="">
<Row Index="1" FileName="C:\WDFlash\Product\drilling_test_1\11111front_test1111.TCN">
<Cell Name="DRAW" DataType="281">1</Cell>
<Cell Name="ESEC" DataType="165">1</Cell>
<Cell Name="NAME" DataType="161">C:\WDFlash\Product\drilling_test_1\11111front_test11111.TCN**</Cell>
<Cell Name="REPETITIONS" DataType="164">1</Cell>
<Cell Name="FIELD" DataType="171">102</Cell>
<Cell Name="ROTATION" DataType="286">1</Cell>
<Cell Name="MIRROR" DataType="284">0</Cell>
<Cell Name="HOOKOPTI" DataType="600">0</Cell>
<Cell Name="LENGTH" DataType="168">786</Cell>
<Cell Name="HEIGHT" DataType="169">462</Cell>
<Cell Name="THICKNESS" DataType="170">22</Cell>
<Cell Name="COMMENT" DataType="162">R33B0015</Cell>
<Cell Name="HOOK" DataType="282">0</Cell>
<Cell Name="TIME" DataType="223">00:00:00</Cell>
<Cell Name="OFFSET X" DataType="277">0</Cell>
<Cell Name="OFFSET Y" DataType="278">0</Cell>
<Cell Name="OFFSET Z" DataType="79">0</Cell>
</Row>
</Rows>
<Bench Row="0">
<Rail Index="1" Encumbrance="174.9" Width="115" Position="28.4" Pods="0" />
<Rail Index="2" Encumbrance="173.6" Width="115" Position="203.3" Pods="0" />
<Rail Index="3" Encumbrance="174" Width="115" Position="376.9" Pods="0" />
<Rail Index="4" Encumbrance="173" Width="115" Position="2570.3" Pods="0" />
<Rail Index="5" Encumbrance="173.5" Width="115" Position="2743.3" Pods="0" />
<Rail Index="6" Encumbrance="145" Width="115" Position="2916.8" Pods="0" />
</Bench>
</List>
Pozdrawiam,
Jacek