SISTEMA DE SEGUIMENTO DE SATÉLITES BB_TRACKER (V4_16_Maio_2012)
O sistema destina-se a estações móveis de satélite para Field days. Está a funcionar e em fase de testes.
LOW COST SATELLITE TRACKING SYSTEM FOR TV ROTORS (TYPE- MASTERROTOR) for Field day activities
English explanation down in this page

Aspecto do Driver que funciona com o Orbitron mostrando a antena a caminhar para a ISS ( Azimuth Travelling e Elevtion Ttravelling)
Características do sistema
Pretende-se com este projecto realizar um sistema de baixo custo para seguimento de satélites - não mais de 350 ,00 € - utilizando o programa ORBITRON que está na Internet com descarga grátis e, partindo do suposto de que, qualquer Radioamador que se preze, possa montar o sistema conforme as nossas instruções sem necessidade de montar placas de circuitos impressos.
Para os Rotores escolhemos os mais baratos do mercado como são os modelos MASTERROTOR B-747 ou o AR-303 que aguentam bem as pequenas antenas de VHF e UHF.
Para fazer o diálogo entre o ORBITRON e os Rotores desenvolvemos 3 placas de circuito impresso : Uma placa com um microcontrolador e duas placas com leds de posicionamento angular +ara os azimutes e para as elevações.
Todo o sistema tem uma precisão de +- 3 graus que é mais que suficiente para os ângulos de abertura das antenas utilizadas até 13 elementos.
Vantagem do sistema
- Apenas é necessário abrir o Rotor que vai ser utilizado para os azimutes e cortar os 2 pinos de travamento.
- O sistemas sincroniza automaticamente à passagem pelo azimute zero no modo automático ou, pode ser forçado a sincronizar premindo o botão SINC.
- Todas as outras adaptações nos rotores são exteriores e limitam-se a colar dois microswitches nos rotores para detectarem a passagem por zero.
- A colocação das placas com leds é muito simples bastando retirar as lâminas de contactos originais dos controladores. Basta seguir as instruções e acompanhar as figuras.
- O BB_TRACKER é um sistema económico que permite a qualquer Radioamador com o mínimo de habilidade entrar no mundo dos satélites estabelecendo QSOs contínuos e estáveis poupando alguns milhares de Euros com sistemas comerciais.
O que é necessário
Material
- 2 Rotores com controladores MASTERROTOR B- 647.
- 3 Placas de circuito impresso: duas para montar nos controladores com leds e outra equipada com um microcontrolador programado para instalar na caixa ou num chassis onde se pretender fazer a montagem do sistema - ao gosto de cada um.
- 1 Tripé adequado para se montar um tubo rotativo. Adquirimos um "quadripé" no Leroy Merlin para um estendal por 30,00 € ( ver figuras).
- 1 Fonte de alimentação velha de um PC onde se aproveitam os 5 Volts.
- 5 Cabos Flat cable de 16 condutores com fichas ICD16 fêmea para ligar a placa do microcontrolador às placas dos leds de posição.
- 2 cabos com 10 metros tipo UTP CAT5 com 4 pares para levar as tensões de controlo para os rotores. Estes cabos são vulgares para as instalações de redes de computadires e vendem-se em qualquer cas de artigos electricos. Usamos apenas 10 metros porque o nosso sistema é para uso em campo, onde o Tripé das antenas se coloca a uns metros da mesa com os equipamentos.
-1 Ficha DB15 pinos para lidar os cabos de 4 pares ao BB_TRACKER.
- Montar, segundo as instruções, os cabos dos controladores à placa do microcontrolador.É muito simples.
( Nota: As fotos em baixo mostram o protótipo que está em funcionamento com excessivas ligações que desaparecerão na versão final da placa de circuito impresso.
Por isso, só se instalarão os 5 Flat cables com fichas e as ligações dos controladores às placas . 11 ligações de cabos e fios ao todo ...)
Software
- Driver BB_TRACKER de Download grátis em http://www.ct4bb.com/BB_TRACKER_SW_FW.html
Para saber como instalar o Driver no ORBITRON clique aqui
O programa é um Driver que corre em ambiente Windows inserido na directoria do Orbitron, como se explica no link referido anteriormente.
O Driver recebe os dados do Orbitron e
envia-os para uma placa equipada com um microcontrolador PIC18F2550 que vai comandar os
controladores dos rotores dos azimutes e das elevações.
Os rotores e os controladores possuem motores
síncronos.
Para os azimutes realizou-se uma placa de circuito impresso com 60 leds em circunferência em ângulos de 6 em 6 graus ( Sectores de 6º) que são suficientes para manter o tracking dos satélites com antenas de elevado ganho e lóbulos de abertura de +- 3 graus a -3 dB.
Para as elevações apenas se fizeram 15 furos correspondentes a 15 sectores de 6 graus.
Nos discos rotativos dos controladores, foi
instalado um fotodíodo BP103B ( sensível ao amarelo) da SIEMENS que, ao rodar detecta o led
aceso e pára no centro do respectivo sector.
O software calcula sempre o trajecto mais curto
em torno dos 360º e caminha nesse sentido.
O programa avisa também que vai efectuar um reset de compensação de voltas a fim de evitar o enrolamento dos cabos em torno do suporte das antenas.
A placa com o microcontrolador que irá comandar os controladores dos rotores será instalada fora dos controladores.
Esta placa para além de comportar um micro controlador PIC18F2550 leva também 5 x 74154 um 7415 e transistores 2N2222 e 2N2907 para excitação dos relés.
Os dois Rotores a utilizar custam 50,00 € cada um
DIAGRAMA DE BLOCOS
![]()
O Hardware simula actuação manual do controlador e recebe informação do Software
fazendo o seguinte:
1 - Acende os leds do azimute e da elevação para onde os rotores se devem deslocar .
2 - Liga as correntes de alimentação dos controladores e simultaneamente dos rotores através dos relés RL1 e RL2
3 - Actua os Relés RL3 e RL4 para definir a direcção do movimento dos rotores: Nos azimutes se é CW ou CCW .Nas elevações se a direcção do rotor é para cima 90º(UP) ou para baixo 0º(Down).
Quando o foto diodo de cada um dos controladores alcançar o led aceso manda uma informação ao microcontrolador para ele desactivar todos os dispositivos anteriormente accionados e uma informação para o PC dizendo que terminaram os movimentos.
Os relés RL5 e RL6 destinam-se a cortar a corrente dos rotores mantendo-a nos controladores para se fazer o sincronismo.
O software adquire os dados Automaticamente do
Orbitron ou Manualmente processando-os do seguinte modo:
- Extrai os dados do Orbitron através do protocolo
DDE (Dinamic Data Exchage) numa string em formato SatsCape.
- Insere esses dados nas janelas de leitura para
visualização
- Processa os dados das janelas comparando os
valores com os intervalos dos sectores e
envia um sinal referente ao ângulo para onde o Micro deve enviar o rotor,
acendendo o led do sector onde se insere esse ângulo.
- O Software compara também os dados actuais com
o anterior para saber sempre em que sentido se deve deslocar o rotor (CW ou
CCW) . Calcula o numero de sectores CW e CCW para onde o rotor se dirigiu
para processar essa informação avisar para se fazer um RESET à rotação da
antena . Se o RESET manual não for efectuado, o software fá-lo-á posteriormente.
Esta acção é necessária para evitar o enrolamento dos cabos das antenas em
torno do suporte. É sempre conveniente fazer o RESET prévio a uma passagem do
satélite para evitar que tal aconteça durante um QSO e se perca um minuto de
QSO com a rotação de 360º
- Mesmo depois de desligado o PC, os dados
relativos à posição da antena são guardados. Por isso, ao ligar o programa
a indicação (azimute e elevação) da ultima orientação estará sempre presente e, se nada foi forçado
fisicamente na antena, corresponderá à posição em que ela se encontra.
- No caso dos valores da Orientação indicados pelo programa não corresponderem à orientação real da antena, é porque algo foi forçado. Para corrigir, bastará activar o botão SINC que vai sincronizar o sistema. Esta acção é efectuada inscrevendo nas janelas de operação manual o valor do azimute e da elevação real para onde a antena se encontra orientada fisicamente. Depois, actua-se o botão SINC e o botão Start (Manual) para se fazer o sincronismo.
Os botões de actuação do programa são :
- Botão- Start/Stop para accionar o sistema
automático de tracking
- Botão- de Start para accionar o sistema manual onde se inserem nas janelas os azimutes e as elevações.
- Botão- SINC Para sincronizar as antenas e a orientação real com a do software. Este botão desliga os rotores e vai permitir que apenas os controladores se movam ao encontro da posição real das antenas que foi inscrito previamente nas janelas de do comando manual e actuados os Botões SINC e depois Start.
- Botão- RESET . Só para a reposição de azimutes
com um volta completa de 360º e com passagem pelo zero. Destina-se a compensar
o enrolamento dos cabos das antenas. O aviso de RESET antes de efectuar o RESET
automático, evita que durante a passagem dum satélite se efectue um reset com
perda de um minuto de QSO.
DIAGRAMA DE FUNÇÕES DO SOFTWARE
Em modo automático
1º Captação da String do Orbitron
2º Colocação dos dados nas janelas do automático
Az e El
3º Conversão dos dados em numérico matemático de Az
e El
Azimutes:
Comparação dos dados de Az para detecção do
sentido de movimento CW ou CCW.
Contagem de CW/s e CCW/s para saber quando se
deve compensar
Procura do sector (60 sectores angulares)
para saber qual o led a acender
Depois de
detectado o sector, enviam-se os comandos a seguir indicados para o
microcontolador.
Nota: Antes de enviar os comandos, o software vai comparar o dado novo do ângulo com o anterior e, se for igual, não envia qualquer comando para o Micro.
Se for diferente envia os seguintes comandos:
1º -
Liga um dos 60 leds do sector angular respectivo
2º -
Liga o sentido de movimento do controlador
3º -
Liga corrente do controlador do rotor
O movimento de rotação dos Azimutes e das Elevações é simultâneo tornando mais rápida a orientação da antena.
Nota: Ao rodar, o fotodíodo da elevação e do
azimute vão encontrar o respectivo Led aceso no sector indicado pelo
Orbitron-Driver e enviam o sinal para o "triger" 7415 que param o seguimento
respectivo através das portas do microcontrolador RC6 e RC7 que fazem desligar todos estes comandos e apagar o led.
O programa continua a ler os dados e, assim que o azimute sai fora do sector de 6 graus (+- 3) é enviada nova informação para o micro comandar novamente o rotor para o sector seguinte ou novo sector de um outro satélite escolhido.
Elevações:
Comparação
dos dados de Elevação para detecção do sentido de movimento UP ou DW. ( Não há
compensações de rotação porque a deslocação é de apenas 90º para cima ou para
baixo.)
Procurar o sector da Elevação(15 sectores angulares de 0º a 90º) para saber qual o led a acender no respectivo sector.
Depois de detectado o sector, enviam-se os
comandos todos da Elevação para o microcontolador
Nota: Antes
de enviar os comandos, o software vai comparar o dado novo com o anterior se for igual não
envia qualquer comando ao micro e se for diferente envia os seguintes comandos:
1º -
Liga um dos 15 leds do sector angular respectivo
2º -
Liga o sentido de movimento do controlador
3º - Liga a corrente do controlador do rotor
Nota:
Ao rodar, o fotodíodo vai encontrar um led aceso e esta
informação vai para o microcontrolador através das portas RC6 e RC7 apagando inclusivamente o led.
O programa continua a ler os dados e, assim que
o azimute sai fora do sector de 6 graus (+- 3) é enviada nova informação para o
microcontrolador comandar o rotor para o sector seguinte.
Em modo Manual
O modo manual é igual ao automático com
excepção da origem dos dados
Inscrição manual dos dados é efetuada
na janela MANUAL AZ= 000 3 casas e
Elevação = 00
Prime-se START e os rotores orientam-se para os valores inseridos.
**************************************************************************************************************************************************************
HARDWARE:
ESBOÇO DO ESQUEMA QUE ESTÁ ACTUALMENTE EM FUNCIONAMENTO
É usado um microcontrolador PIC18F2550 que comanda 5 Data-Distribuidores que acendem cada um 15 leds de cada sector de 90º
ESTUDO DA ESTRUTURA DO PROGRAMA PARA
O MICROCONTROLADOR PIC18F2550
OutBuffer [65]- saída de
dados do PC para o micro controlador PIC18F2550 que vai seleccionar os
DataDistrib. (DD) 74154 respectivos.
Há 5 DataDistrib. 74154
que, conforme a selecção realizada pelo microcontolador, as portas de saída
destes selectores vão acender os leds do respectivo quadrante.
Assim:
DataDistrib. 1 – 1º Quadrante para Azimutes 0º a 90º (sectores 1 a 15). O CS do 1º DD74154 é actuado com RB7=0
DataDistrib. 2 – 2º Quadrante para Azimutes 90º a 180º (sectores 16 a 30 ). O CS do 2º DD74154 é actuado com RB6=0
DataDistrib. 3 – 3º Quadrante para Azimutes 180º a 270º (sectores 31 a 45). O CS do 3º DD74154 é actuado com RB5=0
DataDistrib 4 – 4º Quadrante para Azimutes 270º a 360º (sectores 46 a 60). O CS do 4º DD74154 é actuado com RB4=0
DataDistrib. 5 – 1º Quadrante
para Elevação 0º a 90º (sectores 1 a 15). O CS do 5º DD74154 actuado é com RA0=0 e RB4
a RB7=1
(CS) = Chip Select
As portas de RB (RB0 a RB7) darão por isso as seguintes saídas :
- Valores dos sectores em
RB0 RB1 RB2 e RB3 (2^4 = 16, são necessários apenas 15 sectores por
quadrante - cada sector tem 6 graus)
- Valores em RB4
RB5 RB6 e RB7 = 0 para selecção de 4 Chips
- Enable do
74154 - referentes aos quadrantes dos
azimutes.
O 5 Chip 74154 é
seleccionado com RA0=0 e fazendo RB4 a RB7 =1
Os valores das saídas RB
serão então os seguintes:
Nos Azimute
Para o 1º Quadrante com RB7=0 vai para o ENABLE (pino 19) do DD1.
Para o 2º Quadrante com RB6=0 vai para o ENABLE (pino 19) do DD2.
Para o 3º Quadrante com RB5=0 vai para o ENABLE (pino 19) do DD3.
Para o 4º Quadrante com RB4=0 vai para o ENABLE (pino 19) do DD4.
Para a Elevação
Só um Quadrante com RA0=0 vai para o ENABLE (pino 19) do DD5.
O Pino 18 de Data dos DD está sempre ao nível lógico " 0 "
O protocolo USB/HID trabalha com as portas RC4 (D-) e RC5 (D+) do PIC.
Atribuições do OutBuffer[0...65]
OutBuffer[2] – Comporta o
valor do sector de azimutes que envia para o microcontrolador e que vai ser
recebido no inbuffer[1]
OutBuffer[3] – Envia o
valor do sentido do movimento dos azimutes que entra no
OutBuffer[4] – Envia o valor do
sector de elevação entre 0 e 15 correspondente aos ângulos de 0 e 90º que entram no
OutBuffer[5] – Envia o valor do
sentido das Elevações que entram no
OutBuffer[6]- Envia o valor 0x0D
do botão SINC para desligar as alimentações dos rotores. Este valor entra no
Atribuições do InBuffer [0...65]
InBuffer[3] - Valor a receber do outbuffer[2] microcontrolador Quando for 0xAA, é porque o rotor do Azimute parou. Quando a porta de input RC0 tiver valor 1 originado pelo fotodíodo dos azimutes o rotor pára, e o outbuffer[2] envia 0xAA
InBuffer[5] – Valor a receber do microcontrolador. Quando for 0xAA é porque o rotor de Elevação parou. Este valor vem do outbuffer[4] do micro e é atribuído fazendo outbuffer[4]= 0xAA quando a porta de input RC1 tiver valor 1 originado pelo fotodíodo das elevações, o rotor pára e o outbuffer[4] envia para o PC 0xAA.
Saídas do PC
OutBuffer[0] =0 – não usado
OutBuffer[1] – inbuffer[0]
comunicação interna do micro
OutBuffer[2] – inbuffer[1]
– Comportam os valores dos Sectores dos azimute
OutBuffer[3] – inbuffer[2] – Comportam os valores 0x0A para CW e 0x0B para CCW relativo ao sentido do movimento dos azimutes.
OutBuffer[4] – inbuffer[3] – Comportam o valor dos Sectores das elevações. ver tabela no SW
OutBuffer[5] – inbuffer[4]
- Comportam os valores
0x0A para movimento "Up" e 0x0B para movimento "Down" da elevação
OutBuffer[6] – inbuffer[5]
- Comporta o valor 0x0D do botão SINC
……………… ……………….
Nos OutBuffer[0...65] – inbuffer[0...64] – do 6 ao 64 Não são usados.
InBuffer[0]=0 –Não usado
InBuffer[1]= - outbuffer[0]
InBuffer[2]= - outbuffer[1]
InBuffer[3]= - outbuffer[2]
InBuffer[4]= - outbuffer[3]
InBuffer[5]= - outbuffer[4]
InBuffer[6]= - outbuffer[5]
Resumo da utilização das portas do PIC18F2550
RA0 - Comando CS do 5º DD 74154 relativo ao Quadrante de elevações
RA1 - Dados para selecção do sector 1 a 15 no DD5
RA2 - Dados para selecção do sector 1 a 15 no DD5
RA3 - Liga o sentido do movimento dos Azimutes
RA4 - Liga o sentido do movimento das Elevações
RA5 - Desliga corrente do Rotor dos Azimutes para SINCronismo mantendo a corrente nos controladores RA1 e RA2 ligados para que os controladores rodem e os rotores não.
RA6 - Desliga corrente do Rotor das Elevações para SINCronismo mantendo a corrente nos controladores RA1 e RA2 ligados para que os controladores rodem e os rotores não.
RA7 - Não usado
RB0 - Dados para selecção do sector 1 a 15 no respectivo DD1,2,3,4 seleccionado
RB1 - Dados para selecção do sector 1 a 15 no respectivo DD1,2,3,4 seleccionado
RB2 - Dados para selecção do sector 1 a 15 no respectivo DD1,2,3,4 seleccionado
RB3 - Dados para selecção do sector 1 a 15 no respectivo DD1,2,3,4 seleccionado
RB4 - Comando CS do 1º DD 74154 relativo ao Quadrante dos azimutes
RB5 - Comando CS do 2º DD 74154 relativo ao Quadrante dos azimutes
RB6 - Comando CS do 3º DD 74154 relativo ao Quadrante dos azimutes
RB7 - Comando CS do 4º DD 74154 relativo ao Quadrante dos azimutes
RC0 - Dados para selecção do sector 1 a 15 no DD5
RC1 - Dados para selecção do sector 1 a 15 no DD5
RC2 - Não usado
RC3 - Não existe no microcontrolador 18F2550
RC4 - Porta D- USB
RC5 - Porta D+ USB
RC6 - Entrada do sinal de fim de curso do Azimute
RC7 - Entrada do sinal de fim de curso da Elevação
***********************************************************************************************************************************************************************
ENGLISH EXPLANATION
BB_TRACKER SYSTEM
BB_TRACKER is a System for antenna Satellite tracking designed to control two rotors in Azimuth and Elevation. Rotors are commanded with synchronized motors.The system is to use in a portable satellite station.
It uses a Software Driver running
with Orbitron, a microcontroller in a PCB accessed by the PC USB port which
controls the modified Controller Box.
The Software Driver receives data from Orbitron processes it and sends the commands to the microcontroller which, in turn sends data control to the Rotor Controller.
Data diagram
is:
BB_TRACKER PC Software Driver
à
Data Commands with USB cable-->PCB microcontroller
& Firmware
à Data to Controlà Rotor Controller
à
Rotor
motor
PC sends
Commands to microcontroller and microcontroller sends data Control to the Rotor
Controller.
The main
control work is around azimuth calculations and commands, because elevation is
not problematic with travellings between 0º and 90º.
HOW
IT WORKS
The
concept is to modify the rotor controller button with a hardware which
simulates the manual operation.
This is
done putting around the rotable dish 60 fixed leds which
represents the centre of the 60 sectors.
In the white
plastic rotable dish we put a photodiode which
detects the activated led and stops.
We divided one complete turn of 360º in 60
sectors of 6º each.
The reason
for the sectors is to permit antenna pause between +- 3º of satellite passage
of 6º arc. For example: the sector 5 will be between 24º and 30º and the
antenna will be pointed to 27º during the passage.
As soon as
the satélite azimuth changes out of the sector, the software driver sends a
command to the microcontroller to activate the next sector led and the white
plastic dish of the controller runs 6º and stops because the photodiode found
the activated led. All movements of the rotor controller are send
to the rotor synchronized with two AC 18 V synchronous motors. The connection
between the rotor controller and the rotor is made by a simple 3 wire cable. No
hardware is needed in the rotor unless cutting two stopping pins like explained
in other section.
To install the Driver click here
Rotor
SOFTWARE DRIVER FUNCTIONS FOR THE ORBITRON
The driver
catches the data from Orbitron with the DDE protocol in the Automatic mode or catches
data from the windows in the Manual mode.
The movement of the rotors is free from any mechanical limitation so, it will be possible to turn more than 360º around without being interrupted in the middle of a satellite pass .
To prevent
that automatic resets occurs during the satellite passage, the RESET button
will become
It is also
possible to force the RESET when the Clockwise and Contraclockwise counts are confusing.
In the
Manual operation, the Azimuth and Elevation are inserted in the windows to
command the antenna position.
The SINC button is to synchronize the physical antenna position with the system data. It can occur with heavy wind or data loss and the software position do not corresponds to the physical antenna position.
For this purpose it must bee seen the real antenna
position or, turn it by steps to a known position with known coordinates - for instance a land repeater. Write the
values of the known Azimuth and Elevation in the black windows of the manual
operation and click in the SINC button and after in the Manual Start.
The controller
will track to the written Azimuth and Elevation but the antenna will keep
static. The SINC button will change to
Rotor Controller
INSTALLATION AND OPERATION
Installation
- This program must bee installed inside the Orbitron Directory, or, if you install it in other Directory you must specify the path in the Orbitron config file like : C:\WINDOWS\Programs\Orbitron\BB_TRACKER
Panel
description
There are four buttons and four black windows in the
software Driver panel.
-
Button 1 Start/Stop to operate Automatic
tracking with Orbitron data.
-
Button 2 to RESET the antenna
turns around the mast or support.
-
Button 3 to Start
the manual operation. This is to use when is pretended to direct the antenna
system to a land repeater or land direct contact.
-
Button 4 to synchronize the antenna with controller
- In the
upper black windows is read the Azimuth and Elevation
from Orbitron.
- In the lower black windows is written the azimuth you pretend to direct the antenna or one referenced value of Azimuth and Elevation to synchronize the system.
Explanation to be continued ....
"QUADRIPOD" FOR THE ROTORS AND VHF/UHF ANTENNAS
HOW TO MODIFY THE ROTOR CONTROLLER
Contacts removed Aligning the PCB
Marking holes for the leds Drilling of small holes
Layout
Placing the 60 LEDs on the disk of the azimuths of 15 LEDs on the disk of the elevations. Photodiode and shrink sleeve
Sleeve shrink wrap placed on photodiode Pin where to put the photodiode
Photodiode placed Photodiode will run down and around the leds.
15 Elevation diodes placed. ( Note:Each diode representes a sector of 6º ) Flat cable 16 will connect to the Microcontroller PCB
For Azimuth we have 60 sectors ( 60 leds) divided in four quadrants of 15 sectors. Four flat cable 16 wil connect diodes to the microcontroller PCB
Assembled system to put in to a metalic box
Development to be continued
HOW TO MODIFY THE ROTORS
Remove the blocking pins in the gear
Sinc. motor in the rotor
To be continued