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.