Home › Forums › TinyG › TinyG Support › $*SA parameter lenght
Tagged: sa bldc
- This topic has 5 replies, 2 voices, and was last updated 4 years ago by cmcgrath5035.
-
AuthorPosts
-
November 23, 2020 at 5:04 am #11913Tensi666Participant
Hello together,
I have a question about the $*SA command. I have a BLDC servo with 22.5° step angle and an encoder with 1024 steps resolution. This results in an unusual value of 0.3515625° per pulse. Can I set this value by SA or is it too long?
The axis does not move exactly, so I had the assumption.
Thanks for the feedback and sorry for the bad English.
Many greetings, DanielNovember 23, 2020 at 5:28 am #11914cmcgrath5035ModeratorWelcome to the Forum.
First I have seen this question.
How do you interface tinyG to this motor?
A specific reference to data on the motor might help.The $SA parameter is simply used in a calculation (by tinyG) to determine how far each step pulse (or microstep) will move
I am sort of assuming that you are using a logical interface to an external BDLC controller, but don’t want to speculate too much.
- This reply was modified 4 years ago by cmcgrath5035. Reason: turn on Notify
November 23, 2020 at 5:49 am #11916Tensi666ParticipantHello and many thanks!
I use the Nanotec PD2-CB42M024040-E-01 with clock/direction interface. I have used the buffered signals from the pin header of the board.
With e.g. 100mm travel distance the deviation is approx. 1mm. I can exclude a tracking error. That’s why I had the idea of rounding errors.
Thanks in advance!November 23, 2020 at 6:22 am #11917cmcgrath5035ModeratorOK, for my use here is the klink to the motor
https://us.nanotec.com/products/2130-pd2-cb42m024040-e-01Lots of I/O and data to look at, need some time.
Sooner or later I’ll ask for your parameter set, the results of a $$ command to tinyG. Please paste that to a Cloud drive (Gdrive or whatever) and provide me a URL. If you have some sort of connection diagram, copy that to the cloud as well
What are you using to communicate with tinyG? A terminal interface (e.g. CoolTerm), a Gui (e.g. Chilipeppr, cnc.js) or ?November 23, 2020 at 7:01 am #11918Tensi666ParticipantHello,
thank you very much, but please don’t invest too much time with this topic. I used OpenPNP and this is the configuration section:<command type=”CONNECT_COMMAND”>
<text><![CDATA[$SV=2]]></text>
<text><![CDATA[$ME ]]></text>
<text><![CDATA[$1pm=1]]></text>
<text><![CDATA[$2pm=1]]></text>
<text><![CDATA[$3pm=1]]></text>
<text><![CDATA[$4pm=1]]></text>
<text><![CDATA[$xjm=250]]></text>
<text><![CDATA[$yjm=250]]></text>
<text><![CDATA[$zjm=500]]></text>
<text><![CDATA[$ajm=500]]></text>
<text><![CDATA[$xvm=7000]]></text>
<text><![CDATA[$yvm=7000]]></text>
<text><![CDATA[$zvm=3000]]></text>
<text><![CDATA[$avm=20000]]></text>
<text><![CDATA[$1tr=40.00000]]></text>
<text><![CDATA[$2tr=40.00000]]></text>
<text><![CDATA[$3tr=8.0000]]></text>
<text><![CDATA[$4tr=160.0000]]></text>
<text><![CDATA[$xsn=3]]></text>
<text><![CDATA[$ysn=3]]></text>
<text><![CDATA[$mt=1000000000]]></text>
<text><![CDATA[G21 G90 G92 X0 Y0 Z0 A0 M8 M5]]></text>
<text><![CDATA[$xjh=1000]]></text>
<text><![CDATA[$1mi=8]]></text>
<text><![CDATA[$1sa=0.900]]></text>
<text><![CDATA[$yjh=2000]]></text>
<text><![CDATA[$xsv=1000]]></text>
<text><![CDATA[$ysv=1000]]></text>
<text><![CDATA[$zsv=1000]]></text>
<text><![CDATA[$xsx=2]]></text>
<text><![CDATA[$ysx=2]]></text>
<text><![CDATA[$zsx=3]]></text>
<text><![CDATA[$2mi=1]]></text>
<text><![CDATA[$2sa=0.3515625]]></text>
<text><![CDATA[$zjh=1000]]></text>
<text><![CDATA[$xfr=6000]]></text>
<text><![CDATA[$yfr=2000]]></text>
<text><![CDATA[$zfr=2500]]></text>
<text><![CDATA[$afr=20000]]></text>
<text><![CDATA[$3mi=8]]></text>
<text><![CDATA[$3sa=1.800]]></text>
<text><![CDATA[$4mi=8]]></text>
<text><![CDATA[$4sa=0.900]]></text>
<text><![CDATA[$mt=300.00]]></text>
<text><![CDATA[$zzb=2]]></text>
<text><![CDATA[$3po=1]]></text>
<text><![CDATA[$zsn=0]]></text>
<text><![CDATA[$2po=1]]></text>
</command>The Servo ist the Y-axis.
Thank you!
Greetings, DanielNovember 23, 2020 at 8:13 am #11919cmcgrath5035ModeratorHmmm, that format will make it difficult for me to spot obvious issues.
The data is there, but organized differently than $$ reportHere is a hint for you to contemplate:
tinyG computes the degrees revolution per step pulse by dividing the $sa parameter by the $mi parameter. So, for a simple 200 step per revolution bipolar stepper driven by the tinyG onboard driver, with $mi=8, tinyG sends step pulses as if the effective step angle is 1.8/8=0.125 degrees.
so your step angle is not all that out of whack.I have no simple way to ask all the pertinent questions on your level translators, polarity of connections (remember Enable is active low on tinyG) and all the other details.
- This reply was modified 4 years ago by cmcgrath5035.
-
AuthorPosts
- You must be logged in to reply to this topic.