Design for a Positioner with DiSEqC Decoder

jeallen01

jeallen01

Specialist Contributor
Messages
4,577
My Satellite Setup
See Signature
My Location
Somewhere in England (possibly?)!
Actually, I think that many fairly recent receivers such as the TM5402 M3 do have autofocus, but you have to dig fairly deeply into menus, including some of the "hidden" ones, to find it - and is that not also "somewhere" in the menus of (some?) E2 receivers?
 
Llew

Llew

cerca trova...
Staff member
Messages
14,984
My Satellite Setup
Triple Dragon, Dreambox 8000, Echostar AD3000ip, TBS6522,6925,6983 PCie cards.
Gibertini 1.25m motorised dish driven by the AD3000, with either Inverto BU Quad or Norsat / XMW Ka LNBs . SMW 1.05m + 3 other dishes. Speccy: Promax HD Ranger+
My Location
The Flatlands of East Anglia
Hello Llew ,
thanks for your suggestion.
In your remark you mentioned a SR8700 diagram ,I have a defective SR8700.
Is it possible to send me a copy of your diagram ?
If you use or used the SR8700 i think youre familar with the satfocus function. I have experienced it is very usefull when receiving weak signals.
I don't have the power supply diagram, just ones for various sections of the receiver, for instance video and audio, CPU, tuner support, LNB 13/18V switching, AGC etc.
 
Channel Hopper

Channel Hopper

Suffering fools, so you don't have to.
Staff member
Messages
29,969
My Satellite Setup
A little less analogue, and a lot more crap.
My Location
UK
The autofocus was a feature on all Echostar receiver positioners fom the AD3000 onwards
 
Channel Hopper

Channel Hopper

Suffering fools, so you don't have to.
Staff member
Messages
29,969
My Satellite Setup
A little less analogue, and a lot more crap.
My Location
UK
Trust

Trust

Specialist Contributor
Messages
932
My Satellite Setup
1.8 m CM at SMR 1224 + Elev. with 7 lnb changer Ku (lin - circ) - Ka (lin - circ) C (lin - circ)
My Location
Nijmegen Netherlands

Brians answer to a qwestioner

lock signal autm dish txt.jpg
 
dreambox1959

dreambox1959

Member
Messages
52
Location
FRANCE
My Satellite Setup
humax2000 / technomate 7100
My Location
france
Does anyone have information or a diy design for a positioner with diseqc decoder. I think i will manage to build the motor controller en puls counter and also a stand alone system with a little controller. But i would like to have information about the decoding and detail information / tabel about the disecq codes. I have measured already the 8 bit paterns into a timed/pulsed 22 Khz. I think i can usethe filter from an old disecq switch. Maybe there are other suggestions for my goal : Build a posioner with a east/west degrees display. Maybe it is possible to make a adaptation to the vbox-2.
Thanks al lot already for all your help and suggestions.
hi Harm lok

i did it a few years ago , i had made a new issue last year

i get disecq commands with a vbox similar schematic .
main program is writen in MCS51 assembler code .
i have an excel board to calculate real angle with polarmount and actuator . (you have to take care of offset2)
posimesure0.jpg
posimesure2.jpg
posimesures.jpg
 

Attachments

  • Like
Reactions: a33
A

a33

Specialised Contributor
Messages
650
My Satellite Setup
XSAT410
Rebox RE-9000
My Location
NL
So, I've done some further analysis.

The drawing of Harm Lok suggests 270 degree rotation; that would be more than a polar mount is capable of, I think. 180 degrees would be a (non-reachable) absolute maximum.
In his equation, he has the 0 degrees at the bottom. So the movement would be from -90 to +90 degrees.

I looked up my old notes, from October 2018. Found and derived my equation again.
Other than Harm Lok, I use the range from 0 to 180 degrees.
And of course, I added the B-BB in the equation.

I got rid of the sin² and cos² in the equation, leaving just one cosine.
(Originally I did this, using the cosine rule on triangles. But I could also derive the Harm Lok approach to eliminate the cos² and sin².)
This has the advantage, that the vice-versa calculation (from actuator length to USALS angle) is also not difficult. :)

The equation allows eastside or westside actuator mounting, both giving the correct actuator lengths.

Here the equation, and a (draft) document with relevant info.

A33 Satellite Dish Actuator Length Equation for a certain USALS angle.png

Greetz,
A33

Edited: corrected a typo in the formulae.
And I haven't checked yet, if the ZeroAngle equation is east/west-proof for actuator side. That'll have to be done later.
 

Attachments

Last edited:
H

harm lok

Member
Messages
29
My Satellite Setup
echostar / pace / aston
My Location
The netherlands
The drawing of Harm Lok suggests 270 degree rotation; that would be more than a polar mount is capable of, I think. 180 degrees would be a (non-reachable) absolute maximum.
In his equation, he has the
Hello everyone,

Thanks a lot for pointing me the actuator offset.

For my vox display i have reworked the acutuatorextension / pulses versus angle algorithm.
I have setup a script everone can use by entering the custom measurements.
You only have to input two offsets , radius and the minimal and maximum actuator
extension in mm. The algorithm will show the range off youre dish in degrees from east to west . It also can generate a visualisation and produce a table for a lookup table. It is a more direct method without calculation from a certain angle.
I will place the algoritm with a text comment and explanation, so everyone can see each calculation step.
 
H

harm lok

Member
Messages
29
My Satellite Setup
echostar / pace / aston
My Location
The netherlands
This is copy of the livescript i have programmed in Matlab. It is not just a complete algorithm in one equation ,
but a step by step approach so everyone could understand and use this method for custom situations.
I have tested the script with my own channelmaster 1.2m offset dish with a 18 Inch actuator.
I have also programmed an animated plot so also the moves off the actuator and dish are visualised.
I will publish it here when i have converted it to an image that can published at this blog.

Dishlegends.jpg

Matlab livescript
----------------------------------------------------------------------------------------------

Defining the dish variables

Radius = 370;

The radius between dish pivot and the actuator pivot point on the dish lever (mm)

DishpivotOffset = 190;

The length between dish pivot and the pivot of the actuator mount. (mm)

ActuatorOffset = 48;

Length between actuator pivot point and the centre of the actuator mount. (mm)


MinActuatorLength = 210;
MaxActuatorLength = 550;

Minimal en maximum actuator extensions. (mm)

ActPivToRadiusMin = sqrt( ( (ActuatorOffset^2) + (MinActuatorLength^2) ) ) ;
ActPivToRadiusMax = sqrt( ( (ActuatorOffset^2) + (MaxActuatorLength^2) ) ) ;

Calculate the distances between the actuator pivot and the actuator pivot on the
disk lever for the minimal and maximum actuator lengt. (Pythagorean theorem)

Pact = [ 0 ; 0 ];
Pdsh = [ 0 ; DishpivotOffset ];

Ract = ActPivToRadiusMin ;
Rdsh = Radius ;

Definition off the coordinates for both virtual circles of the actuator and the dish.
This the definition of the virtual circles for minimal extended actuator.
Given is a virtual circle with a center point M (a, b) and a radius r.
So for every point on the virtual circle i have used midpoint equations :

1590868896595.png

D2 = sum((Pact-Pdsh).^2);
P0 = (Pdsh+Pact)/2+(Rdsh^2-Ract^2)/D2/2*(Pact-Pdsh);
t = ((Rdsh+Ract)^2-D2)*(D2-(Ract-Rdsh)^2);
if t <= 0
fprintf('The circles don''t intersect : initial values not correct.\n')
else
T = sqrt(t)/D2/2*[0 -1;1 0]*(Pact-Pdsh);
Pa = P0 + T;
Pb = P0 - T;
end

The virtual circles are defined as a collecting of points based on a rotating triangle.
I have used the pivot of the actuator as coordinate [ 0 , 0]
Pa and Pb are circles' intersection points . We only need the value Pb.
Pa is the other intersection point which as not important for our calculation.
Pa = Coordinate of the minimal extended actuator .

Pact = [ 0 ; 0 ];
Pdsh = [ 0 ; DishpivotOffset ];

Ract = MaxActuatorLength ;
Rdsh = Radius ;

Definition off the coordinates for both virtual circles of the actuator and the dish.
This the definition of the virtual circles for minimal extended actuator

D2 = sum((Pact-Pdsh).^2);
P0 = (Pdsh+Pact)/2+(Rdsh^2-Ract^2)/D2/2*(Pact-Pdsh);
t = ((Rdsh+Ract)^2-D2)*(D2-(Ract-Rdsh)^2);
if t <= 0
fprintf('The circles don''t intersect : initial values not correct.\n')
else
T = sqrt(t)/D2/2*[0 -1;1 0]*(Pact-Pdsh);
Pc = P0 + T;
Pd = P0 - T;
end

Pc and Pd are circles' intersection points . We only need the value Pd.
Pc is the other intersection point which as not important for our calculation.
Pc = Coordinate of the maximal extended actuator .

Angle = sin (Pb(2) / (DishpivotOffset - Pb(1) ) ) ;
MinAngledegree = Angle / (pi/180);
EastlimitAngle = 90 + MinAngledegree

EastlimitAngle = 67.2740

Angle = sin (Pd(2) / (DishpivotOffset - Pd(1) ) ) ;
MaxAngledegree = (Angle / (pi/180) );
WestlimitAngle = ( 90 + MaxAngledegree ) - EastlimitAngle

WestlimitAngle = 80.0125

Please post reactions or comment .
If someone wanted the Matlab file send me a personal message.
It also possible to copy / paste this script (only remove the results)
 

Attachments

A

a33

Specialised Contributor
Messages
650
My Satellite Setup
XSAT410
Rebox RE-9000
My Location
NL
And I haven't checked yet, if the ZeroAngle equation is east/west-proof for actuator side. That'll have to be done later.
I just checked it, and it seems 100% OK.

So with my above formulae, you just need to take four measures at the mount, and then with the USALS angle you can simply calculate every actuator length you want to know.

By the way: The range for the cosine (so: the range for the sum of ZeroAngle + USALSAngle) must be between the theoretical max of 0 to 180 degrees, for the triangle T-A-BB.
In practice, you'd probably need to take the triangle T-A-B for this range, but as the range from 0 to 180 is impossible for such a mount anyhow (not wanting the actuator 'flipping over' the axis), I think you'd have to limit the range for T- A-BB to 15 to 165 degrees or so? (Cannot test with a mount myself ATM.)


Please post reactions or comment .
If someone wanted the Matlab file send me a personal message.
I'm afraid this system of yours is over my head; I just learned maths at school, and some bits of programming in BASIC and Excell after that.
In the calculations above, is it your aim to calculate limits for the actuator length/USALS angle?

The theoretical max range for the actuator length would be from (Radius - DishpivotAxis, or TA - ABB ) to (Radius + DishpivotAxis, or TA +ABB ), for my triangle T-A-BB. Though this maximum (of 0 - 180 degrees), of course, must NEVER be reached.
How did you get to the numbers 210 and 550?
Using these two numbers in the T-A-BB-B-figure, my equation gives the USALS angle range from 25.79 to 159.62 degrees. So different from your numbers -67.27 to 80.0125. Or are we talking about different things here?

Greetz,
A33
 
Last edited:
H

harm lok

Member
Messages
29
My Satellite Setup
echostar / pace / aston
My Location
The netherlands
210 mm en 550mm are the real measurements of the actuator without the offset correction. The offset is called ActuatorOffset = 48 mm
The lenght between te actuator pivot and te lever pivot is calculated with pythogarian thereom.The lengths are a little increased by the calculation. It result into a tiny smaller easy and als a tiny wider west range. Also it affected the zero position.
 
A

a33

Specialised Contributor
Messages
650
My Satellite Setup
XSAT410
Rebox RE-9000
My Location
NL
210 mm en 550mm are the real measurements of the actuator without the offset correction. The offset is called ActuatorOffset = 48 mm
So, T-B(min) = 210 and T-BB(min) is 215.4159, that is what you mean, if I understand you correctly? Yes, I could follow that.

But I cannot follow the angular (circles) calculation that follows.

In my calculation for T-BB(min)=215.416 the angle T-A-BB is 25.79 (as written above). [where the line A-BB is taken as zero degrees]

For T-B(max) = 550 and T-BB(max) is 552.09, for that I get the angle T-A-BB is 159.626. [where the line A-BB is taken as zero degrees]


So , my range from 25.79 to 159.62 degrees is different from your numbers: -67.27 to 80.0125.
When we are trying to indicate the same range, something doesn't add up.
As I don't understand your method (sorry, no expert in maths...), I can say nothing sensible about that though... :(

Greetz,
A33
 
H

harm lok

Member
Messages
29
My Satellite Setup
echostar / pace / aston
My Location
The netherlands
When we are trying to indicate the same range, something doesn't add up.
As I don't understand your method (sorry, no expert in maths...),
I think this wil help to understand the method. As a example i have used the minimal actuator / disk setup. Is usesthe corrected actuator length from the actuators pivot and the disc radius . The method only use the Pythagorean theorem. After this you could calculate the data you need.
It is also transferable to the other corners.
In the mathlab script i have usednearly the same method , only with coordinates and for all the points that described the boths circles.
Also much compressed within a matrix.

But with this i am sure you can adapt your own excel spreadsheet.

explainationPyth.jpg
 
A

a33

Specialised Contributor
Messages
650
My Satellite Setup
XSAT410
Rebox RE-9000
My Location
NL
Well, I simply used the cosine rule to calculate the min and max angle.

So the equation for that is exactly the same as my ZeroAngle equation, above; you just have to change the 'zero' in 'min' or 'max'.

I think you have to look again at your calculation for min and max angle, I'm afraid. It looks like you took another angle from the min-triangle?
I'm taking the angle at the rotation axis A in my drawing, so the angle between length 370 and length 190. That's the axis the dish rotates on.

Greetz,
A33
 
H

harm lok

Member
Messages
29
My Satellite Setup
echostar / pace / aston
My Location
The netherlands
Well, I simply used the cosine rule to calculate the min and max angle.
Greetz,
A33
I have shorten the algorithm , so the proccesor can calculate the angle directly without the use of a lookup table. I have also made a plot in the matlab program so
you can see on screen how the actuator and the disk act from min to max. In your drawing it seems that the pivot off the dish is not in line with the pivot off the actuator. Did I have to add such a offset to make the algoritm universal ?

Greetings
 
A

a33

Specialised Contributor
Messages
650
My Satellite Setup
XSAT410
Rebox RE-9000
My Location
NL
In your drawing it seems that the pivot off the dish is not in line with the pivot off the actuator. Did I have to add such a offset to make the algoritm universal ?
I define the situation: T-A lies at the the other end (opposite) of BB-A, as 180 degrees; and
the situation: T-A lies exactly above BB-A, as zero degrees.
(Theoretical maximums, that in practice never can exist.)

That way, the position of BB and T can be anywhere (relative to the dish and mount), and you can choose where you want to have your most precise actuator control (at about 90 degrees!).

And also this applies, then:
The theoretical max range for the actuator length would be from (Radius - DishpivotAxis, or TA - ABB ) to (Radius + DishpivotAxis, or TA +ABB ), for my triangle T-A-BB. Though this maximum (of 0 - 180 degrees), of course, must NEVER be reached.



However, the due south/north position then lies somewhere between that 0-180 degrees, not at an obligatory fixed point in advance. In your calculation you have to determine where exactly. So that you can add a (positive or negative) USALS angle to it, which has zero at due south/north.
That ZeroPosition I calculate with my ZeroAngle (= ApexAngle) equation, above.

[ I now realize I use the word zero for two situations: for the zero-180 degrees range; and for the zero-position: due south/north angle that lies somewhere between the 0 and 180 degrees. Sorry for the confusion.
Looking for another word: From now on I will (try to) call the ZeroAngle the ApexAngle, the Apex being the highest point of the arc, that is ofcourse situated exactly due south/north.
The range from 0-180 degrees could also be called actuator angle or so? So that ActuatorAngle = ApexAngle + USALSAngle?]


Universal it is, when you allow TA to be positive for the actuator at the eastside of the axis, or negative for the westside. (See my earlier document.)
That I checked and elaborated in my above document, and in the equations it works out perfectly, as far as I tested. Previously I calculated with 'abs' and 'sign'-functions, but that isn't needed I discovered.


I think the calculator should have an absolute maximum calculation range for T-A-BB of 10 to 170 degrees, with the possibility to enter limit-values even further constricted (to 15 and 163, just to name some examples). This would be mount-protection (against flipping over, and because all the pivots are not mathematical points, but have a width).

Actuator length protection I would not set as separate limits. When needed, they can be set as angle limits also. And the actuator will have its own limit-switches, to protect it, I guess.

But maybe some actuator-users can say something about the needs for this limit-settings....


I hope I have expressed myself clearly in english again,
Greetz,
A33
 
Last edited:
A

a33

Specialised Contributor
Messages
650
My Satellite Setup
XSAT410
Rebox RE-9000
My Location
NL
BTW, @harm lok :

Here is the faulty step in your derivation:

Harm Lok Fault in the equation.png

Can you all see it?

When you correct the signs again in the equation, you'll get the angles I reported all along. :)

Greetz,
A33
 
Last edited:
H

harm lok

Member
Messages
29
My Satellite Setup
echostar / pace / aston
My Location
The netherlands
Youre absolut right in that . I is goo to hear , that it inspires you to.

I had already made a new shorter algorithm for my cortex processor. I have imported the lengths of the 3d polarmount vector drawing into matlab. In the matlab plot you can also see that I included the zero vector.

DishpivotOffset = 190;
ActuatorOffset = 48;
MinActuatorLength = 210;
MaxActuatorLength = 550;
ZerodegreeExtension = 430;


for Actuatorlength = MinActuatorLength:1:MaxActuatorLength;
ActPivToRadius = round(sqrt( ( (ActuatorOffset^2) + (Actuatorlength ^2) ) )) ;
Y(Actuatorlength-MinActuatorLength+1) = ((Radius^2)-(ActPivToRadius^2)-(DishpivotOffset^2))/(2*DishpivotOffset );
X(Actuatorlength-MinActuatorLength+1) = sqrt( ( (ActPivToRadius^2))-(Y(Actuatorlength-MinActuatorLength+1)^2) );

if Actuatorlength == ZerodegreeExtension;
ZeroDegree_ActPivToRadius = ActPivToRadius;
ZeroDegreePointer = (Actuatorlength-MinActuatorLength+1);
end
end

matlab_vector.jpg

I
 
H

harm lok

Member
Messages
29
My Satellite Setup
echostar / pace / aston
My Location
The netherlands
Some progress with the disecq decoder
I don't have the power supply diagram, just ones for various sections of the receiver, for instance video and audio, CPU, tuner support, LNB 13/18V switching, AGC etc.
Thanks for the effort Llew.
This day i have received the complete diagram of the sr8700 (including the power supply) from a old echostar employee .
So if some people would like tho have a copy please send me a pm
 
Top