Mpg kolečko z cncshopu

RaS
Příspěvky: 8572
Registrován: 26. 3. 2009, 9:12
Bydliště: Úvaly

16. 6. 2013, 9:18

no tak neříkej že nechodí mux :D když se ti na něm nemění vstupy.. máš ty vstupy muxu propojený s tím vlastním vstupem?
věčný rýpal,který musí mít poslední slovo, odpůrce low-cost zařízení končících v naprosté většině případů v hromadě šrotu
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
fupe
Příspěvky: 645
Registrován: 27. 5. 2008, 9:10
Bydliště: Praha

17. 6. 2013, 8:18

stihacka píše: Neporadil by mi někdo jak to měřítko předělat na tři piny bez muxu? Hledal jsem, ale nějak mi to nedává smysl. Díky
Jestli chces misto dvou pinu pouzivat pro vyber meritka tri, tak pouzij misto MUX4 MUX8, ten ma 3 vstupy a 8 vystupu.
takze pouzijes jen nektere hodnoty z pravdivostni tabulky, tak aby byl vzdy jenom jeden ze tri vstupu TRUE.

sel2=FALSE, sel1=FALSE, sel0=TRUE out follows in1

sel2=FALSE, sel1=TRUE, sel0=FALSE out follows in2

sel2=TRUE, sel1=FALSE, sel0=FALSE out follows in4

to muze klidne pripojit i na otocny spinac, kterym to budes vybirat.

M
stihacka
Příspěvky: 117
Registrován: 19. 1. 2012, 3:06
Bydliště: Mladá Boleslav
Kontaktovat uživatele:

17. 6. 2013, 9:27

To pouziti tri pinu jsem myslel ze by to fungovalo uplne stejne jako volba os, co meritko to jeden pin, bohate to staci. Az sr k tomu dostanu tak sem dam muj hal. Beztak tam neco bude chybet, ale je mi divny ze kdyz se podivam v halmanageru na zmenu stavu tech dvou pinu tak se nic nedeje, pritom merakem to je ok, jestli to ten mux ovlivnuje az takhle...
fupe
Příspěvky: 645
Registrován: 27. 5. 2008, 9:10
Bydliště: Praha

17. 6. 2013, 9:42

stihacka píše:To pouziti tri pinu jsem myslel ze by to fungovalo uplne stejne jako volba os, co meritko to jeden pin, bohate to staci. Az sr k tomu dostanu tak sem dam muj hal. Beztak tam neco bude chybet, ale je mi divny ze kdyz se podivam v halmanageru na zmenu stavu tech dvou pinu tak se nic nedeje, pritom merakem to je ok, jestli to ten mux ovlivnuje az takhle...
Jenze u volby os pripojis kazdy ze tri pinu na jednotlive osy.

net mpg-x axis.0.jog-enable <= parport.1.pin-04-in
net mpg-y axis.1.jog-enable <= parport.1.pin-05-in
net mpg-z axis.2.jog-enable <= parport.1.pin-06-in

kdezto u volby meritka potrebujes do jednoho vstupniho pinu scale prehazovat ruzne hodnoty kroku, jak to chces udelat? do jednoho vstupu muzes napojit pouze jeden vystup.
net pend-scale axis.0.jog-scale <= mux4.0.out
net pend-scale axis.1.jog-scale
net pend-scale axis.2.jog-scale

na to je prave idealni mux a jeho vystup napojit na scale. vsechno ostatni mi prijde slozitejsi. nerikam, ze to nejde udelat jinak.

M
stihacka
Příspěvky: 117
Registrován: 19. 1. 2012, 3:06
Bydliště: Mladá Boleslav
Kontaktovat uživatele:

17. 6. 2013, 1:43

Aha, tak to je asi slozitejsi nez jsem si to predstavoval. Myslel jsem ze to jednoduse pujde tak ze kdyz budu mit sepnuty pin 2, tak budu mit meritko 0,01, kdyz pin 3 tak 0,1 a pin 4 bude 1,0.

Edit: Tady je cutom.hal

Kód: Vybrat vše

# Include your customized HAL commands here
# This file will not be overwritten when you run stepconf again

# Jog MPG 
loadrt encoder num_chan=1 
loadrt mux4 count=1 
addf encoder.capture-position servo-thread 
addf encoder.update-counters base-thread 
addf mux4.0 servo-thread 
setp encoder.0.x4-mode 0 
setp mux4.0.in0 0.01 
setp mux4.0.in1 0.1 
setp mux4.0.in2 1.0 

# vstupy pro encoder 
net mpg-aa encoder.0.phase-A <= parport.1.pin-10-in 
net mpg-bb encoder.0.phase-B <= parport.1.pin-11-in 

# vstupy pro volbu meritka 
net scale1 mux4.0.sel0 <= parport.1.pin-02-in 
net scale2 mux4.0.sel1 <= parport.1.pin-03-in
net pend-scale axis.0.jog-scale <= mux4.0.out 
net pend-scale axis.1.jog-scale 
net pend-scale axis.2.jog-scale  

#vstupy pro volbu osy 
net mpg-x axis.0.jog-enable <= parport.1.pin-05-in-not 
net mpg-y axis.1.jog-enable <= parport.1.pin-06-in-not 
net mpg-z axis.2.jog-enable <= parport.1.pin-07-in-not 

net pend-counts axis.0.jog-counts <= encoder.0.counts 
net pend-counts axis.1.jog-counts 
net pend-counts axis.2.jog-counts 
stihacka-mill.hal

Kód: Vybrat vše

# Generated by stepconf at Mon Jun 10 21:20:01 2013
# If you make changes to this file, they will be
# overwritten when you run stepconf again
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt probe_parport
loadrt hal_parport cfg="0x378 out 0xdf30 in"
setp parport.0.reset-time 5000
loadrt stepgen step_type=0,0,0

addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread

addf parport.1.read base-thread
addf parport.1.write base-thread
addf parport.1.reset base-thread

addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread
net spindle-cmd <= motion.spindle-speed-out
net spindle-on <= motion.spindle-on

net spindle-on => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
setp parport.0.pin-03-out-invert 1
net xdir => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 1
net ydir => parport.0.pin-05-out
net zstep => parport.0.pin-06-out
setp parport.0.pin-06-out-reset 1
net zdir => parport.0.pin-07-out


net home-x <= parport.0.pin-10-in
net home-y <= parport.0.pin-11-in
net home-z <= parport.0.pin-12-in
net all-limit <= parport.0.pin-13-in


setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 55000
setp stepgen.0.dirsetup 55000
setp stepgen.0.maxaccel [AXIS_0]STEPGEN_MAXACCEL
net xpos-cmd axis.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => axis.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir
net xenable axis.0.amp-enable-out => stepgen.0.enable
net home-x => axis.0.home-sw-in
net all-limit => axis.0.neg-lim-sw-in
net all-limit => axis.0.pos-lim-sw-in

setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 55000
setp stepgen.1.dirsetup 55000
setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCEL
net ypos-cmd axis.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => axis.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.1.amp-enable-out => stepgen.1.enable
net home-y => axis.1.home-sw-in
net all-limit => axis.1.neg-lim-sw-in
net all-limit => axis.1.pos-lim-sw-in

setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 55000
setp stepgen.2.dirsetup 55000
setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL
net zpos-cmd axis.2.motor-pos-cmd => stepgen.2.position-cmd
net zpos-fb stepgen.2.position-fb => axis.2.motor-pos-fb
net zstep <= stepgen.2.step
net zdir <= stepgen.2.dir
net zenable axis.2.amp-enable-out => stepgen.2.enable
net home-z => axis.2.home-sw-in
net all-limit => axis.2.neg-lim-sw-in
net all-limit => axis.2.pos-lim-sw-in

net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in

loadusr -W hal_manualtoolchange
net tool-change iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
stihacka-mill.ini

Kód: Vybrat vše

# Generated by stepconf at Mon Jun 10 21:20:01 2013
# If you make changes to this file, they will be
# overwritten when you run stepconf again

[EMC]
MACHINE = stihacka-mill
DEBUG = 0

[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
INTRO_GRAPHIC = emc2.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/stihacka/emc2/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm

[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python

[TASK]
TASK = milltask
CYCLE_TIME = 0.010

[RS274NGC]
PARAMETER_FILE = emc.var

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 62500
SERVO_PERIOD = 1000000

[HAL]
HALFILE = stihacka-mill.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal

[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 5.00
MAX_LINEAR_VELOCITY = 50.00

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 47.5
MAX_ACCELERATION = 150.0
STEPGEN_MAXACCEL = 187.5
SCALE = 320.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 510.0
HOME_OFFSET = 25.000000
HOME_SEARCH_VEL = -50.000000
HOME_LATCH_VEL = -1.562500
HOME_SEQUENCE = 1

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 47.5
MAX_ACCELERATION = 150.0
STEPGEN_MAXACCEL = 187.5
SCALE = 320.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 245.0
HOME_OFFSET = 20.000000
HOME_SEARCH_VEL = -50.000000
HOME_LATCH_VEL = -1.562500
HOME_SEQUENCE = 1

[AXIS_2]
TYPE = LINEAR
HOME = 155.0
MAX_VELOCITY = 47.5
MAX_ACCELERATION = 150.0
STEPGEN_MAXACCEL = 187.5
SCALE = 320.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = 0.0
MAX_LIMIT = 155.001
HOME_OFFSET = 130.000000
HOME_SEARCH_VEL = 50.000000
HOME_LATCH_VEL = 1.562500
HOME_SEQUENCE = 0
A další co se najednou děje, tak při volbě osy mi jezdí jedna osa, potom najednou dvě a při přepnutí na třetí jezdí všechny. Tak já už fakt nevim co s tím. A ještě pro upřesnění mám pro volbu os a měřítka dva otočné přepínače každý s celkem 12 polohama.
Naposledy upravil(a) stihacka dne 17. 6. 2013, 7:39, celkem upraveno 1 x.
RaS
Příspěvky: 8572
Registrován: 26. 3. 2009, 9:12
Bydliště: Úvaly

17. 6. 2013, 2:55

no když to máš negované:
net mpg-x axis.0.jog-enable <= parport.1.pin-05-in-not
net mpg-y axis.1.jog-enable <= parport.1.pin-06-in-not
net mpg-z axis.2.jog-enable <= parport.1.pin-07-in-not
tak pokud to máš vyplé tak budeš mít logickou 1ku na všech a musí jezdit všechny osy, pokud se přepneš na jednu z nich tak budou chodit vždy ty dvě druhý
a nebo ten tvůj spínač není spínač ale nějakej kodér a dává na každou polohu nějakou kombinaci něčeho..

spusť si halmanagera a koukej se co ti dělaj jkednotlivý vstupy.. pokud budeš sledovat mpg-x axis.0.jog-enable a parport.1.pin-05-in-not a to samé pro další osy.. tak když budeš točit tak musí být aktivní vždy jen jedna dvojice těch signálů.. pokud jsou aktivní dvě nebo víc máš to blbě zapojený..
to samé pak sledovat pro vstupy volby měřítka..

jde to udělat i tak jak to píšeš pomocí několika muxů ale je to zbytečný plejtvání vstupama.. a nevyřeší to tvůj problém.. nejdřív ti ty signály musej chodit do emcčka a pak můžou něco dělat, pokud nechoděj tak to nemůže chodit..
věčný rýpal,který musí mít poslední slovo, odpůrce low-cost zařízení končících v naprosté většině případů v hromadě šrotu
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
stihacka
Příspěvky: 117
Registrován: 19. 1. 2012, 3:06
Bydliště: Mladá Boleslav
Kontaktovat uživatele:

17. 6. 2013, 3:05

No, je to nějaký splašený. Protože když jsem to negování smazal(to jsem si všiml, že to je divný), přesto to jezdilo tak že na první polohu všechny, na druhou dvě osy a na třetí jedna, takže se to jen otočilo. Přitom v halamanageru se tyhle vstupy chovají jak mají.
fupe
Příspěvky: 645
Registrován: 27. 5. 2008, 9:10
Bydliště: Praha

17. 6. 2013, 3:35

Jak to spinas? 5v proti pulldown odporu, nebo obracene, nebo bez odporu? Ale kdyz pises ze piny se halmanageru chovaj sporadane, tak to vypada na neco jinyho. Mesa je treba citliva na neosettrenej stav a je potreba tam mit odpory. M
stihacka
Příspěvky: 117
Registrován: 19. 1. 2012, 3:06
Bydliště: Mladá Boleslav
Kontaktovat uživatele:

17. 6. 2013, 4:11

Spínám to zemí, pin 14, bez odporu. Odpory muzu zkusit, jakou hodnotu?
fupe
Příspěvky: 645
Registrován: 27. 5. 2008, 9:10
Bydliště: Praha

18. 6. 2013, 5:47

stihacka píše:Spínám to zemí, pin 14, bez odporu. Odpory muzu zkusit, jakou hodnotu?
Zkus 10k proti 5v.
M
stihacka
Příspěvky: 117
Registrován: 19. 1. 2012, 3:06
Bydliště: Mladá Boleslav
Kontaktovat uživatele:

18. 6. 2013, 2:06

Tak se omlouvam, ale on je nakonec opravdu problem v tech prepinacich, oni spinaj v nejakym kodovani i kdyz se mi nejdriv zdalo ze ne. Takze ted jen sehnat obyc prepinace.

EDIT: tak zpet, podle datasheetu to jsou opravdu obyc prepinace, ale chovaji se ted nejak divne.
IMAG0612.jpg
RaS
Příspěvky: 8572
Registrován: 26. 3. 2009, 9:12
Bydliště: Úvaly

18. 6. 2013, 3:25

tak to proměř.. musí to spínat vždy jen jeden pin proti společnému a žádnej jinej..
věčný rýpal,který musí mít poslední slovo, odpůrce low-cost zařízení končících v naprosté většině případů v hromadě šrotu
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
stihacka
Příspěvky: 117
Registrován: 19. 1. 2012, 3:06
Bydliště: Mladá Boleslav
Kontaktovat uživatele:

18. 6. 2013, 3:38

Právě že když jsem je měl venku, tak to chodilo si myslím dobře, když ale přivedu na přívod 5V, tak to spíná všelijak, není možný že by paralelní port pouštěl něco zpátky?

Jinak to spínání 5V s odporem nefunguje, jen proti zemi.
RaS
Příspěvky: 8572
Registrován: 26. 3. 2009, 9:12
Bydliště: Úvaly

18. 6. 2013, 3:43

proměř to ohmicky mezi sebou a vidíš to hned co to dělá.. třeba to je skutečně nějaký kodér a jsou tam různé kombinace a nebo máš třeba jinej vstup co já vím.. prostě základ je že ti to musí skutečně korektně spínat, pak to pošleš do emc a to musí korektně pracovat..
věčný rýpal,který musí mít poslední slovo, odpůrce low-cost zařízení končících v naprosté většině případů v hromadě šrotu
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
testone
Sponzor fora
Příspěvky: 7383
Registrován: 3. 12. 2010, 5:56
Bydliště: Slaný

18. 6. 2013, 3:48

vem multimetr a propípej ten přepínač
vem tužku a kus papíru a namaluj schema jak je to zapojený
to tě donutí pořádně se zamyslet nad každým drátem, odkud, kam a proč
dost možná přitom přijdeš na to, že někde děláš nějakou triviální botu, možná několik současně
když nepřijdeš na nic sám, určitě bude pro ostatní jednodušší bádat podle schematu než podle nejednoznačných a neúplných popisů
Obvykle se dějí věci obvyklé. Méně často se dějí věci neobvyklé a zcela vyjímečně se dějí věci vyjímečné...
Masturn 40 CNC, Hermle UWF1200H CNC a pár klasik
http://www.radialengine.cz" onclick="window.open(this.href);return false;
http://www.autopejsek.cz" onclick="window.open(this.href);return false;
Odpovědět

Zpět na „Ostatní elektronika“