Full cnc controller
- robokop
- Site Admin
- Příspěvky: 22390
- Registrován: 10. 7. 2006, 12:12
- Bydliště: Praha
- Kontaktovat uživatele:
vypada to jako dobry pocin
neco podobneho dela kolega na zaklade dobre fungujiciho a praxi overeneho produktu
rozhodli jsme se zmenit filozofii puvodniho produktu
tedy aby to slo na DIN listu
na flashi mohl byt program takze obrabet autonomne
puvodne ovladani z PC pomoci RS232
v novem produktu ethernet
diplay na diagnostiku a autonomni rezim
vsechny vstupy vystupy gal. oddelene
vystupy na 5 os dostatecne rychle pro serva
celkem se na to tesim, myslim ze to je idealni pro hobysty protoze cena bude rozumna a vykon bude profi
neco podobneho dela kolega na zaklade dobre fungujiciho a praxi overeneho produktu
rozhodli jsme se zmenit filozofii puvodniho produktu
tedy aby to slo na DIN listu
na flashi mohl byt program takze obrabet autonomne
puvodne ovladani z PC pomoci RS232
v novem produktu ethernet
diplay na diagnostiku a autonomni rezim
vsechny vstupy vystupy gal. oddelene
vystupy na 5 os dostatecne rychle pro serva
celkem se na to tesim, myslim ze to je idealni pro hobysty protoze cena bude rozumna a vykon bude profi
Vsechna prava na chyby vyhrazena (E)
-
- Příspěvky: 318
- Registrován: 27. 1. 2008, 4:30
Ten kolega jsem ja, pilne jsem kreslil a psal, neni hotovo vse, ale
uz celkem hezky funguje, tak bych vas chtel seznamit:
************************************
* *
* Jednotka PLC - technicky popis *
* *
************************************
(22.11.2008 - P.B.)
Rozmery: 123 x 83 x 56 mm
Hmotnost: cca 300g
Zespod volitelne klips na DIN listu, nebo deska s upevnovacimi otvory.
PLC se sklada ze 2 desek plosnych spoju, jedna z nich je vypocetni, druha osetruje
vstupy, vystupy a napajeni. Spolu jsou spojeny 40 pinovym konektorem (uvnitr).
I/O deska: (PLNE FUNKCNI)
=========
5x vystup pro rizeni driveru motoru
-----------------------------------
6 pinovy konektor pro kazdou osu (X,Y,Z,A,B)
GND napajeni pro pripadnou aktivaci Enable driveru
+5V napajeni pro pripadnou aktivaci Enable driveru (max. odber 100mA)
-CLK vystup pulsu pro rizeni driveru
+CLK vystup pulsu pro rizeni driveru
-DIR vystup smeru pro rizeni driveru
+DIR vystup smeru pro rizeni driveru
Kazda z os je samostatne galvanicky oddelena od vnitrniho potencialu, i od
ostatnich os. To muze byt vyhodne v pripade problemu s pripojenym driverem,
a zaroven se eliminuji proudove zemni smycky. Diferencialni rizeni zabezpecuje
vysokou imunitu vuci okoli i ve velmi zarusenem prostredi.
8x vstupu pro zjistovani stavu stroje
-------------------------------------
Vsechny vstupy jsou na spolecnem potecialu a cely blok je galvanicky
oddelen od zbytku zarizeni.
Kazdy vstup ma indikacni zlutou LED, takze lze i letmym pohledem zjistit,
co je sepnute, a co ne.
Spinane napeti 12V je vytazeno i na konektor. Proud sepnutym kontaktem je cca 5mA.
Kazdy ze vstupu muze byt pouzit pro preruseni prace.
4x rele pro spinani ruzne technologie
-------------------------------------
1 rele ma pevne urcenou funkci spinani vretene
3 rele jsou konfigurovatelne pro ruzne funkce napr:
chlazeni, ofuk, laser, odbrzdeni osy Z po zapnuti, zamknuti krytu behem obrabeni
kontakty rele max.30VDC/2A nebo max.125VAV/2A
V zadnem pripade NENI urceno pro 230V AC z rozvodne site !
Kazde rele ma svou cervenou LED pro indikaci stavu.
1x vystup pro programove ovladani otacek vretene
------------------------------------------------
analogovy vystup 0..10V s presnosti lepsi nez 1%
spinaci kontakt pro sepnuti vstupu start frekvencniho menice
galvanicky oddeleno
1x napajeci konektor
--------------------
tudy se privadi DC napajeni celeho pristroje 10..15V
na vstupu ochrana proti prepolovani
Kazdy IO na teto desce, ktery by mohl prijit do styku s nejakou neodbornou
aktivitou/omylem uzivatele, je v precizni patici, kvuli snadne a rychle vymene.
CPU deska: (AUTONOMNI REZIM ZATIM NENI HOTOVY, cca za 6 mesicu bude)
========== (HW PLNE FUNKCNI)
Jsou zde 2x 32 bitove procesory ARM.
Interpolacni procesor:
---------------------
Provadi interpolace vektoru, hlida prerusovaci vstupy a sensory,
stara se o vystupy a registruje okamzitou polohu.
Muze byt ovladan v rezimu remote z PC, nebo v autonomnim rezimu
z druheho procesoru (File manageru).
max.pocet vektoru v bufferu: 320
rychlost interpolaci: 125 tis.kr./s
max.delka vektoru: 4 294 967 295 kr. (2^32-1)
File manager:
------------
Ma k dispozici pro uschovu dat interni FRAM 32kB a vymennou MMC kartu.
V autonomnim rezimu krmi daty interpolacni procesor a komunikuje
pres textovy terminal s uzivatelem, v rezimu remote nedela nic.
Data mohou byt posilana v rezimu remote z PC pomoci programu Remote, GVP
nebo nejakou jinou uzivatelskou aplikaci, protokol je pomerne jednoduchy
v textove podobe, napr: L100,50,25 provede vektor X=100,Y=50,Z=25 kroku.
Protokol muze byt chranen kontrolnimi soucty.
Data mohou byt privadena pomoci RS232 (max.230400Bd), nebo Ethernetem
(max.921600Bd), pripadne nahrana (v PC) a zastrcena MMC karta s patricnym souborem.
V autonomnim rezimu se pouzivaji klasicke Gkody, ktere File manager prevede
do protokolu interpolacniho procesoru, a posila mu je po interni lince 3.6MBaud.
V autonomnim rezimu tudiz PC neni potreba, je to velmi vyhodne pro opakovanou
vyrobu. Takze lze napr. nahrat data po firemni/domaci LAN a pak uz bez naroku
na komunikaci a jeji propustnost poustet porad dokola. Nebo pri frezovani
slozitych 3D tvaru byva uzke hrdlo prave komunikace s PC, je vyhodnejsi
poustet autonomne, freza velmi "ozije".
Konektor EXT/JOG muze slouzit bud pro klasicke najizdeci kolecko, nebo
pro rozsireni systemu nejakou dalsi jednotkou, napr. jednotkou pro automatickou
vymenu nastroju.
Jsou zde 2 konektory pro sensory, jeden pohyblivy pro mereni vzdalenosti
nastroje a materialu, druhy stacionarni pro korekci po vymene nastroje.
Temito konektory se take muze provadet (jen servisnimi techniky)
pripadny upgrade firmwaru v obou procesorech bez rozebrani zarizeni.
Konektor Keyb slouzi pro spojeni s uzivatelskym terminalem. (NENI HOTOVO)
Na hornim krytu jsou konfiguracni switche pro volbu komunikacni rychlosti,
volbu rezimu a pripadne vypnuti nepouziteho sensoru.
Pavel Borovsky
uz celkem hezky funguje, tak bych vas chtel seznamit:
************************************
* *
* Jednotka PLC - technicky popis *
* *
************************************
(22.11.2008 - P.B.)
Rozmery: 123 x 83 x 56 mm
Hmotnost: cca 300g
Zespod volitelne klips na DIN listu, nebo deska s upevnovacimi otvory.
PLC se sklada ze 2 desek plosnych spoju, jedna z nich je vypocetni, druha osetruje
vstupy, vystupy a napajeni. Spolu jsou spojeny 40 pinovym konektorem (uvnitr).
I/O deska: (PLNE FUNKCNI)
=========
5x vystup pro rizeni driveru motoru
-----------------------------------
6 pinovy konektor pro kazdou osu (X,Y,Z,A,B)
GND napajeni pro pripadnou aktivaci Enable driveru
+5V napajeni pro pripadnou aktivaci Enable driveru (max. odber 100mA)
-CLK vystup pulsu pro rizeni driveru
+CLK vystup pulsu pro rizeni driveru
-DIR vystup smeru pro rizeni driveru
+DIR vystup smeru pro rizeni driveru
Kazda z os je samostatne galvanicky oddelena od vnitrniho potencialu, i od
ostatnich os. To muze byt vyhodne v pripade problemu s pripojenym driverem,
a zaroven se eliminuji proudove zemni smycky. Diferencialni rizeni zabezpecuje
vysokou imunitu vuci okoli i ve velmi zarusenem prostredi.
8x vstupu pro zjistovani stavu stroje
-------------------------------------
Vsechny vstupy jsou na spolecnem potecialu a cely blok je galvanicky
oddelen od zbytku zarizeni.
Kazdy vstup ma indikacni zlutou LED, takze lze i letmym pohledem zjistit,
co je sepnute, a co ne.
Spinane napeti 12V je vytazeno i na konektor. Proud sepnutym kontaktem je cca 5mA.
Kazdy ze vstupu muze byt pouzit pro preruseni prace.
4x rele pro spinani ruzne technologie
-------------------------------------
1 rele ma pevne urcenou funkci spinani vretene
3 rele jsou konfigurovatelne pro ruzne funkce napr:
chlazeni, ofuk, laser, odbrzdeni osy Z po zapnuti, zamknuti krytu behem obrabeni
kontakty rele max.30VDC/2A nebo max.125VAV/2A
V zadnem pripade NENI urceno pro 230V AC z rozvodne site !
Kazde rele ma svou cervenou LED pro indikaci stavu.
1x vystup pro programove ovladani otacek vretene
------------------------------------------------
analogovy vystup 0..10V s presnosti lepsi nez 1%
spinaci kontakt pro sepnuti vstupu start frekvencniho menice
galvanicky oddeleno
1x napajeci konektor
--------------------
tudy se privadi DC napajeni celeho pristroje 10..15V
na vstupu ochrana proti prepolovani
Kazdy IO na teto desce, ktery by mohl prijit do styku s nejakou neodbornou
aktivitou/omylem uzivatele, je v precizni patici, kvuli snadne a rychle vymene.
CPU deska: (AUTONOMNI REZIM ZATIM NENI HOTOVY, cca za 6 mesicu bude)
========== (HW PLNE FUNKCNI)
Jsou zde 2x 32 bitove procesory ARM.
Interpolacni procesor:
---------------------
Provadi interpolace vektoru, hlida prerusovaci vstupy a sensory,
stara se o vystupy a registruje okamzitou polohu.
Muze byt ovladan v rezimu remote z PC, nebo v autonomnim rezimu
z druheho procesoru (File manageru).
max.pocet vektoru v bufferu: 320
rychlost interpolaci: 125 tis.kr./s
max.delka vektoru: 4 294 967 295 kr. (2^32-1)
File manager:
------------
Ma k dispozici pro uschovu dat interni FRAM 32kB a vymennou MMC kartu.
V autonomnim rezimu krmi daty interpolacni procesor a komunikuje
pres textovy terminal s uzivatelem, v rezimu remote nedela nic.
Data mohou byt posilana v rezimu remote z PC pomoci programu Remote, GVP
nebo nejakou jinou uzivatelskou aplikaci, protokol je pomerne jednoduchy
v textove podobe, napr: L100,50,25 provede vektor X=100,Y=50,Z=25 kroku.
Protokol muze byt chranen kontrolnimi soucty.
Data mohou byt privadena pomoci RS232 (max.230400Bd), nebo Ethernetem
(max.921600Bd), pripadne nahrana (v PC) a zastrcena MMC karta s patricnym souborem.
V autonomnim rezimu se pouzivaji klasicke Gkody, ktere File manager prevede
do protokolu interpolacniho procesoru, a posila mu je po interni lince 3.6MBaud.
V autonomnim rezimu tudiz PC neni potreba, je to velmi vyhodne pro opakovanou
vyrobu. Takze lze napr. nahrat data po firemni/domaci LAN a pak uz bez naroku
na komunikaci a jeji propustnost poustet porad dokola. Nebo pri frezovani
slozitych 3D tvaru byva uzke hrdlo prave komunikace s PC, je vyhodnejsi
poustet autonomne, freza velmi "ozije".
Konektor EXT/JOG muze slouzit bud pro klasicke najizdeci kolecko, nebo
pro rozsireni systemu nejakou dalsi jednotkou, napr. jednotkou pro automatickou
vymenu nastroju.
Jsou zde 2 konektory pro sensory, jeden pohyblivy pro mereni vzdalenosti
nastroje a materialu, druhy stacionarni pro korekci po vymene nastroje.
Temito konektory se take muze provadet (jen servisnimi techniky)
pripadny upgrade firmwaru v obou procesorech bez rozebrani zarizeni.
Konektor Keyb slouzi pro spojeni s uzivatelskym terminalem. (NENI HOTOVO)
Na hornim krytu jsou konfiguracni switche pro volbu komunikacni rychlosti,
volbu rezimu a pripadne vypnuti nepouziteho sensoru.
Pavel Borovsky
-
- Příspěvky: 318
- Registrován: 27. 1. 2008, 4:30
Mohu se zeptat zda resite v MCU kruhovou(eliptickou) rasterizaci, nebo jsou kruznice(elipsy) "rozdrobeny" na linearni useky??? Dale pouzivate na vypocet rychlosti/akcelerace/decelerace celociselnou matematiku nebo staci vykon ARMu na FloatingPoint vypocty?? Na jake frekvenci "bezi" ARM ?? (60MHz nebo vice??). Predem dekuji za odpovedi (a chapu pokud pripadne zadne nedostanu z duvodu ochrany KnowHow).
(..... je mi jasne ze jakozto konstrukter na cenu nemuzete odpovedet protoze vyrobni cena bude podstatne jinde nez komercni.)
(..... je mi jasne ze jakozto konstrukter na cenu nemuzete odpovedet protoze vyrobni cena bude podstatne jinde nez komercni.)
-
- Příspěvky: 318
- Registrován: 27. 1. 2008, 4:30
Kruznice a libovolne krivky jsou rozdrobeny do usecek tak aby byla
splnena zadana max.odchylka secny. ARM bezi na 60MHz, je tam
2x LPC2138. Na vypocty akcelerace a decelerace se vyuziva celociselna
aritmetika a jeste jsem ji psal v assembleru, a pocital jednotlive strojni cykly, float ani nahodou. Uvedomte si ze pri 125tis.krocich na to mate 8us, a jeste musite byt na prijmu serioveho kanalu.
Nejrychlejsi ARM (9) s flash jsou na 96MHz - Thomson.
Delaji se i rychlejsi, ale ty uz maji externi pamet, a tudiz nelze ochranit SW. KnowHow timto neprozradim, pokud to nekomu pomuze, at se do toho da, uzije si.
Pavel
splnena zadana max.odchylka secny. ARM bezi na 60MHz, je tam
2x LPC2138. Na vypocty akcelerace a decelerace se vyuziva celociselna
aritmetika a jeste jsem ji psal v assembleru, a pocital jednotlive strojni cykly, float ani nahodou. Uvedomte si ze pri 125tis.krocich na to mate 8us, a jeste musite byt na prijmu serioveho kanalu.
Nejrychlejsi ARM (9) s flash jsou na 96MHz - Thomson.
Delaji se i rychlejsi, ale ty uz maji externi pamet, a tudiz nelze ochranit SW. KnowHow timto neprozradim, pokud to nekomu pomuze, at se do toho da, uzije si.
Pavel
Vypada to moc hezky,ale je skoda ze 125 kHz je na serva dost malo, a tak je jednotka spis jen pro KM.Nestalo by za to,pouzit tam co nejrychlejsi PCU a vytahnout z toho maximum? Takle je to tak na pul cesty.Pro KM asi zbytecny luxus a pro serva moc pomale.
Jinak je to krasna prace.
Jinak je to krasna prace.
-
- Příspěvky: 318
- Registrován: 27. 1. 2008, 4:30
Serva GSK DA98A, ktere jsem mel k dispozici na testovani mely nativni max.clk 500kHz, to by opravdu nestacilo. Ale maji tez moznost nasobit kazdy prichozi clk celym cislem. Zrejme s podobnou situaci pocitaji. Vyzkousel jsem uspesne s nasobitelem 10x a 3x. Tady by byl zapotrebi nasobitel 4x. Pak to je 2500 clku/ot., coz pri bezne pouzivanem sroubu
se 4mm stoupanim dela delku kroku 4/2500=1,6um, tedy srovnatelne
s chybou kvalitnich sroubu. Vse pri max. rychlosti 200mm/s. Pri mensi
rychlosti presneji.
Pro krokove motory je predimenzovano jen mirne, napr. 3fazove KM Berger-Lahr s jednotkou teze firmy dokaze akceptovat az 100kHz.
Kdyz provozujete 2fazove KM s maximem 5 tis.kr./s v 1/16mikrokrocich,
dostanete se k pozadavku 80 tis.kr/s.
Tedy je to pro KM tak akorat, serva jdou take, i kdyz by to mohlo byt lepsi.
S nejrychlejsim ARMem (9) s flash (na 96MHz) - Thomson bych se dostal
v nejlepsim pripade cca 250kHz. Opravdu velke interpolacni rychlosti
lze asi dosahnout jen pomoci FPGA, a to zatim neumim.
Pavel
se 4mm stoupanim dela delku kroku 4/2500=1,6um, tedy srovnatelne
s chybou kvalitnich sroubu. Vse pri max. rychlosti 200mm/s. Pri mensi
rychlosti presneji.
Pro krokove motory je predimenzovano jen mirne, napr. 3fazove KM Berger-Lahr s jednotkou teze firmy dokaze akceptovat az 100kHz.
Kdyz provozujete 2fazove KM s maximem 5 tis.kr./s v 1/16mikrokrocich,
dostanete se k pozadavku 80 tis.kr/s.
Tedy je to pro KM tak akorat, serva jdou take, i kdyz by to mohlo byt lepsi.
S nejrychlejsim ARMem (9) s flash (na 96MHz) - Thomson bych se dostal
v nejlepsim pripade cca 250kHz. Opravdu velke interpolacni rychlosti
lze asi dosahnout jen pomoci FPGA, a to zatim neumim.
Pavel
GSK servodriver sice nasobeni umi,ale ne kazdy ( dokonce vetsina) si asi serva GSK za desitky tisic nekoupi a sahne po radove dostupnejsich driverech a motorech,ktere nasobic nemaji.Kdyz vezmu jako bezny standard enkoder s 1000 imp/ot,coz je 4000 pulzu na otacku,tak tech 250kHz uz s 5mm sroubem predstavuje 300mm/s coz je vic nez dostacujici a jednotka bude dobre pouzitelna i pro enkoder s 2000 imp.
Takze si myslim,ze by stalo za to po tom rychlejsim CPU sahnout,pokud to nepredstavuje nejaky zasadni problem.
Myslim,ze pokud cena bude rozumna,najde se dost lidi,kteri po takovem produktu sahnou,protoze PC s Win2K a Mach3 ma strop na 100 kHz.
Takze si myslim,ze by stalo za to po tom rychlejsim CPU sahnout,pokud to nepredstavuje nejaky zasadni problem.
Myslim,ze pokud cena bude rozumna,najde se dost lidi,kteri po takovem produktu sahnou,protoze PC s Win2K a Mach3 ma strop na 100 kHz.
Ahoj .
Pozeral som web stranku s PIC a nieco sa mi nezda , pise ze dokaze az 50Khz step a to na 8bit je dost vysoka hodnota. aj iny idu na 8bitoch ale nie ani nahodou viac ako 30khz.
pavel-gravos mas to super ale ja by som (ako to robym ja ) pretaktoval procesor na 72Hhz (ja pouzivam LPC2148) a tam to ide dobre. a co sa tyka tvojeje rychlosti je super ale pises ze pouzivas 2 MCU . jeden prepocitava a generuje kroky a druhy komunikuje a riadi tu prvu???
moja doska ide na LPC2148 jednom a teraz som realne na nejakych 60kHz a je to malo a chcem ist na nejakych 100kHz (viac nie jeto len pre KM). co sa tyka toho prepoctu akceleracie a decleracie tak su dva sposoby celociselne a s premenlivou desatinnou ciarkou. kazde ma svoje plusy aj minusy.
no a kruznice (este niesu hotove) ale chcem klasickou kruznicovou interpolaciou a nie delenie na ciarky. chcem aby to bralo priamo Gcody a mozno aj HPGL ale neviem ci to niekedy dam dohromady lebo nemam cas.
pozeral som po ARM9 (ST ma nieco zaujimave a bezi na 125MHz a ma to tusim aj VFP coprocessor) ale nejako sa mi dotohho uz nechce.
pre vsetkych co ich to zaujima tak nech si pozru beagleboard dosku je tam super doska (lacna) a snad by sa do toho to dalo strepat.
inac pozrite si http://forums.reprap.org/index.php je tam cely projekt a aj kod.
zdravim
Pozeral som web stranku s PIC a nieco sa mi nezda , pise ze dokaze az 50Khz step a to na 8bit je dost vysoka hodnota. aj iny idu na 8bitoch ale nie ani nahodou viac ako 30khz.
pavel-gravos mas to super ale ja by som (ako to robym ja ) pretaktoval procesor na 72Hhz (ja pouzivam LPC2148) a tam to ide dobre. a co sa tyka tvojeje rychlosti je super ale pises ze pouzivas 2 MCU . jeden prepocitava a generuje kroky a druhy komunikuje a riadi tu prvu???
moja doska ide na LPC2148 jednom a teraz som realne na nejakych 60kHz a je to malo a chcem ist na nejakych 100kHz (viac nie jeto len pre KM). co sa tyka toho prepoctu akceleracie a decleracie tak su dva sposoby celociselne a s premenlivou desatinnou ciarkou. kazde ma svoje plusy aj minusy.
no a kruznice (este niesu hotove) ale chcem klasickou kruznicovou interpolaciou a nie delenie na ciarky. chcem aby to bralo priamo Gcody a mozno aj HPGL ale neviem ci to niekedy dam dohromady lebo nemam cas.
pozeral som po ARM9 (ST ma nieco zaujimave a bezi na 125MHz a ma to tusim aj VFP coprocessor) ale nejako sa mi dotohho uz nechce.
pre vsetkych co ich to zaujima tak nech si pozru beagleboard dosku je tam super doska (lacna) a snad by sa do toho to dalo strepat.
inac pozrite si http://forums.reprap.org/index.php je tam cely projekt a aj kod.
zdravim
-
- Příspěvky: 318
- Registrován: 27. 1. 2008, 4:30
Rychlejsi procesor: bude v dalsi verzi, jeste nemam hotove ani tohle.
Do te doby by mohl uz Atmel konecne prodavat verzi 150MHz s flash.
Vyhledove tak asi za rok, ono to chvili prece jen trva nez se szijete s novym procesorem a nakreslite HW. Nejprve dodelam tohle, abych
nemel plno krasnych snu, a nic hotoveho.
Prodej: ted jeste musi jednotka projit zaverecnymi, dost tvrdymi testy,
pak teprve bude uvolneno do prodeje. Casove cca 1 mesic.
Pavel
Do te doby by mohl uz Atmel konecne prodavat verzi 150MHz s flash.
Vyhledove tak asi za rok, ono to chvili prece jen trva nez se szijete s novym procesorem a nakreslite HW. Nejprve dodelam tohle, abych
nemel plno krasnych snu, a nic hotoveho.
Prodej: ted jeste musi jednotka projit zaverecnymi, dost tvrdymi testy,
pak teprve bude uvolneno do prodeje. Casove cca 1 mesic.
Pavel