własny program sterujacy amatorska frezarka cnc // w delphi

Rozmowy dotyczące oprogramowania sterującego maszynami CNC i sterowników CNC obrabiarek numerycznych

Autor tematu
michal22-1982
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 1
Posty: 3
Rejestracja: 22 sie 2007, 19:17
Lokalizacja: częstochowa

własny program sterujacy amatorska frezarka cnc // w delphi

#1

Post napisał: michal22-1982 » 22 sie 2007, 19:26

witam jestem nowym na tym forum i chcialem prosic o rade . Interesuje mnie tematyka cnc , pracuje nawet na jednej z takich maszyn jednak chcialbym wraz z kolega zbudowac wlasna maszyne , mamy juz plany . Jednak potrzebuje do tej maszynki programu sterujacego i chcialem go sam napisac w delphi , od czego zaczac najlepiej .



Tagi:


Marcin Stachera
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 1
Posty: 186
Rejestracja: 22 lut 2005, 00:38
Lokalizacja: Warszawa
Kontakt:

#2

Post napisał: Marcin Stachera » 23 sie 2007, 02:07

Witam.

Polecam Wam najpierw zbudowanie maszynki a potem programu.
Taka kolejnosc pozwoli na lepsze "poczucie" tego co program ma obslugiwac.

No i oczywiscie czekamy na forum na zamieszczenie postepow z prac.

Pozdrawiam.

Awatar użytkownika

webserver
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 989
Rejestracja: 01 sty 2005, 17:48
Lokalizacja: Bełchatów
Kontakt:

#3

Post napisał: webserver » 23 sie 2007, 10:03

michal22-1982 pisze:od czego zaczac najlepiej .
zacznij od zmiany jezyka programowania delphi sie nie nadaje, dlaczego ? ... poszukaj na forum bylo juz nascie postow na ten temat.
Pozdrawiam PlotComplex.com


piromarek
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 1
Posty: 1341
Rejestracja: 08 maja 2007, 08:05
Lokalizacja: Chodzież

#4

Post napisał: piromarek » 23 sie 2007, 12:06

Witam.

No właśnie. To problem Delphi czy całego windowsa i jego przydziału dostępu do portu LPT ?
Może kolega rozwinąć swoją wypowiedź ?
Uprzedzając - czytałem na forum to co dotyczyło własnych programów. Może nie wszystko. Proszę o jakieś linki do jednoznacznych wniosków wykluczajacych użycie tego środowiska do oprogramowania obrabiarki cnc.
Język to język. Turbo Pascal czy Object Pascal wydaje się tak samo dobry jak każdy inny.
Mój kolega równolegle pracuje nad sterowaniem , które pisze w C++.
Oczywiście nie opracował własnego komponentu dla obsługi portu a jedynie korzysta ze znalezionego w necie gotowca.
Efekt : szarpany dostęp do poru i nierównomierna praca silników. ( oczywiście może to sprawa komponentu i trzeba poszukać innego )
A nie jest to DELPHI.

pozdrawiam

Piromarek


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 4
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#5

Post napisał: jarekk » 23 sie 2007, 15:38

Problem lezy w Windowsach

Step2Cnc Piotra Rakowskiego został napisany w Delphi - działa ( na LPT ).
Proponuję poczytać na forum posty ludzi którzy mieli z nim problemy - czasami wystarczy mieć jakiś śmieć w Windowsach i można zapomnieć o stabilnej pracy ( nawet Mach tego nie zapewnia - proponuję poczytać instrukcję instalacji Macha - daje pojęcie co szkodzi płynnej pracy sterowników LPT ).

Mach działa tylko dzięki bardzo specjalistycznemu sterownikowi który przez system widziany jest jako softwerowa karta dźwiękowa - dzięki temu ma bardzo wysoki priorytet obsługi ( oraz dostęp do 44kHz przerwania - normalnie niedostępnego nawet dla innych sterowników kernelowych).


Właśnie uruchamiam dla pana Piotra sterownik USB do jego programu - ale tu mamy szybki procesor ARM z pamięcią do której ładowany jest plik z wektorami pracy. Po tej operacji ARM już sam przetwarza wektory i może działać nawet odłączony od PC.


Proponuje raczej użyć DOS'a :-(


zahoryzontem
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 1
Posty: 16
Rejestracja: 27 lip 2007, 11:50
Lokalizacja: Łódź

#6

Post napisał: zahoryzontem » 23 sie 2007, 20:36

Bywają komponenty które pozwalają wymusić dostęp do portów na nieco lepszym poziomie niż zarządzanie przez Windows... w końcu sporo programów też pod Win pracuje...
Tak więc pozbędźcie się przesądów ;) chyba że mówimy nie o programiście tylko jakimś skrypciaku... ;)


vector11
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 1
Posty: 296
Rejestracja: 31 gru 2004, 01:18
Lokalizacja: N1 NOKTO

#7

Post napisał: vector11 » 23 sie 2007, 21:31

zahoryzontem pisze:Bywają komponenty które pozwalają wymusić dostęp do portów na nieco lepszym poziomie niż zarządzanie przez Windows... w końcu sporo programów też pod Win pracuje...
Tak więc pozbędźcie się przesądów ;) chyba że mówimy nie o programiście tylko jakimś skrypciaku... ;)
dokładnie...
eee, jak się używa timera z api do generowania przebiegu na lpt, to się potem jęczy, że system zły, środowisko niedobre, rąbek u spódnicy nie taki, itp.
ARM oblicza wektory...zgadza się, ale każdy pecet ma procesor, który mocą bije na głowę 10 armów - trochę asemblera i znajomości architektury procesora i bardzo ładnie można taktować port nawet kilkadziesiąt kHz


olo_3
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 1
Posty: 1249
Rejestracja: 31 sie 2004, 22:25
Lokalizacja: EU

#8

Post napisał: olo_3 » 23 sie 2007, 22:09

jarekk pisze: Po tej operacji ARM już sam przetwarza wektory i może działać nawet odłączony od PC
a co w przypadku estop ?
Zwątpienie jest oznaką, że podążasz w dobrym kierunku.

Awatar użytkownika

webserver
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 989
Rejestracja: 01 sty 2005, 17:48
Lokalizacja: Bełchatów
Kontakt:

#9

Post napisał: webserver » 23 sie 2007, 23:17

olo_3 pisze:Po tej operacji ARM już sam przetwarza wektory i może działać nawet odłączony od PC
Napisalem takie oprogamowanie dla Atmegi i bez problemu jest w stanie obsluzyc sterowanie 3D na podstawie wektorow zapisanych w zewnetrzej pamieci ...
olo_3 pisze:a co w przypadku estop ?
Przycisk jest podlaczony pod przerwania procesora wiec moze w dowolnym momecie przerwac sterowanie silnkami a puzniej wznowic od miejsca gdzie zostal on przerzerwany. takich wejsc w procku jest wiecej wiec mozna podlaczyc i oprogramowac i inne zeczy.
Pozdrawiam PlotComplex.com


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 4
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#10

Post napisał: jarekk » 24 sie 2007, 13:34

vector11 pisze:dokładnie...
eee, jak się używa timera z api do generowania przebiegu na lpt, to się potem jęczy, że system zły, środowisko niedobre, rąbek u spódnicy nie taki, itp.
ARM oblicza wektory...zgadza się, ale każdy pecet ma procesor, który mocą bije na głowę 10 armów - trochę asemblera i znajomości architektury procesora i bardzo ładnie można taktować port nawet kilkadziesiąt kHz
Tak, ale go zmuś abyś dostał 1% jego mocy - w równych przedziałach co 10uS - w Windowsach to praktycznie niemożliwe. Dlatego programy CNC działające pod DOSem, mimo że funkcjonalnie ustępują windowsowym pracują stabilnie.

olo_3 pisze:jarekk napisał/a:
Po tej operacji ARM już sam przetwarza wektory i może działać nawet odłączony od PC
a co w przypadku estop ?
Procesor ma wektory w swojej pamięci flash. Cały proces mogę zatrzymać w dowolnym momencie - przy każdym pojedynczym kroku( 50kHz daje interwał 20uS) Mogę dodać proces hamowania - jeżeli będzie trzeba. Mogę uaktywnić hamulce.W dowolnym momencie mogę uruchomić program - wprzód lub nawet wstecz. Mogę zmienić dynamicznie prędkość.
webserver pisze:olo_3 napisał/a:
Po tej operacji ARM już sam przetwarza wektory i może działać nawet odłączony od PC


Napisalem takie oprogamowanie dla Atmegi i bez problemu jest w stanie obsluzyc sterowanie 3D na podstawie wektorow zapisanych w zewnetrzej pamieci ...
Do jakiej częstotliwości pracy daje radę Atmega ? Jeszcze nie uruchomiłem swojego algorytmu na ARMie ( działa na PC), ale z przeliczeń wyszło mi że 60MHz ARM ledwie to pociągnie ( 50kHz x 4 osie )

webserver pisze:takich wejsc w procku jest wiecej wiec mozna podlaczyc i oprogramowac i inne zeczy.
Mam do dyspozycji ( na razie, w prototypie)
- 4x osie ( step/dir)
- 8 wyjść binarnych ogólnego przeznaczenia
- 2 wyjścia PWM
- 6 wejść dedykowanych krańcówkom ( docelowo 8 )
- wejście e-stop
- 4 wejścia ogólnego przeznaczenia

Docelowo może być ich więcej - w wersji finalnej dojdzie małe FPGA aby buforować sterowanie osiami.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Ogólne Dyskusje na Temat Systemów Sterowania CNC”