Ir para conteúdo


- - - - -

protocolo de radio frequencia


  • Por favor inicie sessão para responder
15 respostas a este tópico

#1 zeb

zeb

    null

  • Membro
  • Pip
  • 17 mensagens

Publicado 01 de Julho de 2007 - 11:37

boas pessoal... eu estou a acabar o meu curso de electonica e como projecto final tou a pensar em fazer o controlo de uma camara por RF,atraves de um comando RF, este comando eu pretendo fazelo, um comando de quatro canais para dar para a esquerda direita cima e baixo, eu tive a falar com um stor meu e ele disse que para fazer este comando era mais facil eu criar um protocolo de comunicaçao do que tar a adaptar um akilo que eu quero. o que eu precisava era de uma ajuda para conseguir fazer isto.
alguem de voces me consegue arranjar um manual de criaçao de protocolos... ou indicarm o ptotocolo mais indicado para a  comunicaçao...
todas as ajudas sao bem vindas!

#2 mynos

mynos

    null

  • Membro
  • Pip
  • 12 mensagens

Publicado 03 de Julho de 2007 - 00:32

Boas.
Este é o meu primeiro post neste forum e espero vir a contribuir com todos vos.

Entao o que me parece que precisas é de um protocolo de comunicaçao que permita enviar ordens entre dois microcontroladores por exemplo, que sao soluçoes muito usadas presentemente.Assim existe um protocolo muito usado ate a nivel industrial, que é o protocolo ZigBee, que te permite comunicaçoes até 400m em espaço aberto se nao me engano. Entao já esta tudo feito e os módulos sao baratos, cerca de 35€ cada um. Assim se meteres um microcontrolador a controlar o motor da camara e o modulo zigbee junto da camara, e outro microcontrolador ligado ao  teu PC com um microcontrolador e um modulo ZigBee consegues controlar a tua camara... Podes ate criar um miniteclado com 4 botoes e nao precisas do PC, precisas dele para os testa e programaçao  do micro mas depois na soluçao final podes prescindir dele, usando apenas o microcontrolador com o modulo ZigBee e o teclado, alimentados com uma pilha de 9V por exemplo.
Nunca usei este protocolo mas ja li e estive a analisar modulos ZigBee, e conversores RS232-ZigBee, que servem por exemplo em robotica para carregar software nos robots sem necessidade dos tradicionais cabos, mas é como te digo, nunca usei e por isso nao te sei dizer que tipo de dificuldades podes encontrar...

Para a tua soluçao nao deve haver problemas porque a info que pretendes enviar é muito simples, cima baixo direita esqerda, podes usar o envio de 4 caracteres e interpretalos no microcontrolador do lado da camara...

Nao te vou colocar aki o site mas procura no google robotitaly, que tem la bons modulos ZigBee, ve os datasheets e analisa-os como o teu professor, vais ver que sao simples, e com relativamente pouco dinheiro, nao sei se trabalhas ou nao resolves o te problema e mais, e muito importante, ficas com uma soluçao que te possibilita melhorar o controlo e fazer mais coisas no futuro porque o portocolo ZigBee permite mais que enviar apenas 4 comandos.

Quanto à parte dos microcontroladores, aconcelho-te vivamente a usares PIC, a Microchip dá samples, e existe imenso codigo na net ja desenvolvido para configurar os diferentes modulos, RS232, I2C, CAN, ADC, etc... eventualmente, pode ate ja haver alguma coisa desenvolvida para interface com modulos ZigBee mas nao tenho certezas... ainda assim nao penses que tens a papinha toda feita e isto ainda vai dar umas horas valentes frente ao PC, mas se nao fosse assim nao tinha piada  :)

Se quiseres posso disponibilizar-te os PCB's para montares o KIT para os PIC, tudo do tipo de material "faça em casa", ou seja todos os componentes faceis de soldar e montar, os PIC's sao do tipo PDIP (de caixa grande) mas pra KITS didaticos sao melhores para a malta que nao tem material especifico para montagens de superficie...promenores...

Pessoalmente tenho usado os PIC's da serie 18, em especial o 18F4680, mas este PIC tem o problema de precisar de carregar o boot loader nos programadores oficiais da Microchip.., Quanto ao carregar o boot loader dos PIC's existem uns programadores baratos e simples de se fazerem, os JDM programmer, que carregam os boot loadres a alguns PIC's da serie 18, por isso se nao tiveres nenhum programador disponivel aconcelhote a começares por aki... monta um programador, ou compra, e depois manda vir PIC's que tenhas o bootloader e he consigas programar nesse programador...

Bom se pretenderes levar isso para a frente entra em contacto comigo que posso dar.te umas ajudas nos passos a seguires mas nao posso caminhar por ti :)

Bom penso que ja tens umas ideias...por isso analisa-as e boa sorte

cumps
mynos

#3 zeb

zeb

    null

  • Membro
  • Pip
  • 17 mensagens

Publicado 04 de Julho de 2007 - 21:38

e pa obrigado,destm uma garnde ajuda.. vou analisar melhor o k tu m disseste e dps qualquer duvida entro em contacto contigo.pelo que disseste ate parece simples de fazer obrigado.

#4 zeb

zeb

    null

  • Membro
  • Pip
  • 17 mensagens

Publicado 04 de Julho de 2007 - 21:43

ja agora como e que posso mandar vir amastras da microship, tive a ver no site mas nao encontrei..

#5 mynos

mynos

    null

  • Membro
  • Pip
  • 12 mensagens

Publicado 05 de Julho de 2007 - 10:07

as amostras que te falava eram os PIC, os microcontroladores...
Tens de te registar na Microchip, com um email pertencente a uma empresa, ou universidade ou instituiçao registasda...nada de mails da Gmail  ;)
Pedes ao teu professor que deve ter um mail da escola para se registar e tal...e mandas vir uns PICs...
Quanto ao resto so comprando... na Robot Italy tens la tudo o que precisas...
Se quiseres montar o Kit do PIC, mas antes decide o rumo do projecto com o teu professor, avisa que mando-te os esquematicos para mandares fazer os PCB's ...

Parece ser simples e é, mas so depois de estar tudo a funcionar...o custome.... mas olha que tens que dar ao dedo... Tens trabalho de soldadura, para montar o Kit do PIC pelo menos, e vais ter de esperar para que o PCB esteja pronto... tens o tempo de espera do PIC que vem dos states como amostra eventualmente, ou entao compras um nas lojas de elctronica (entre 10 a 20€ dependendo do PIC, para o KIT que te posso disponibilizar eu ja usei os PIC's 16F877A e 18F4680, mas podes usar outros desde que  garantas que tem os pinos de alimentação iguais a estes dois modelos senao depois quando o meteres no socket nao funciona...), e depois tens o tempo de espera do material que eventualmente compres...isto é tempo sem realizar trabalho...

Depois de soldado e funcional modulo a modulo, tens a parte de programaçao em C, MPLAB editor, e Hitch PIC C18 compilador, que dá sempre os seus stress...

Ja agora sabes-me dizer que tipo de motor(es) sao os que movem a camara?! posso as x saber algo que te ajude a fazer o interface entre o PIC e os motores da camara!

Este teu projecto engloba hardware, projecto e construçao, protocolos wireless e  programaçao de perifericos....
Ja agora isto é para um curso de profissional ou estas na universidade?!

cumps
mynos

#6 zeb

zeb

    null

  • Membro
  • Pip
  • 17 mensagens

Publicado 06 de Julho de 2007 - 22:07

Este é  um curso profissional de equivalência ao 12º ano. os motores que vou usar sao motores passo-a-passo. para fazer isto ainda tnh mais de um ano mas tenho que começar agora para fazer a lista do material, para entregar na escola para mandar vir tudo o que preciso.....
agora nao percebi uma coisa porque é que tenho que uusar a linguagem c, achas que vou precisar?????
esta linguagem era so se fosse preciso usar o pc para controlar a camara. eu vou fazer o comando para a controlar, logo acho que preciso so do mplab.

#7 pedrotuga

pedrotuga

    Stack Overflow

  • Membro
  • PipPipPipPipPipPipPip
  • 7517 mensagens

Publicado 06 de Julho de 2007 - 23:02

Epa... eu nunca usei microcontroladores, mas...
O mplab não é um ide que te facilita a programação do pic em C?

tipo... usas o mplab para programar o teu pic... em C!

#8 zeb

zeb

    null

  • Membro
  • Pip
  • 17 mensagens

Publicado 07 de Julho de 2007 - 12:45

a programaçao do pic é em assembler, mas acho qke podes programar em c e dps usar um compilador para dps passar para o pic.acho eu pelo menos foi o k ouvi dizer.

#9 pedrotuga

pedrotuga

    Stack Overflow

  • Membro
  • PipPipPipPipPipPipPip
  • 7517 mensagens

Publicado 07 de Julho de 2007 - 14:13

Ver Mensagemzeb, em 07 de Julho de 2007 - 12:45, disse:

a programaçao do pic é em assembler, mas acho qke podes programar em c e dps usar um compilador para dps passar para o pic.acho eu pelo menos foi o k ouvi dizer.

O pic leva código máquina lá para dentro como qualquer outro hardware, por exemplo o teu computador. A linguagem que utilizas para posteriormente é que interessa.
Tanto C como assembly têm que ser compiladas para poderem ser interpretadas pelo PIC.

A razão pela qual se usa C é para facilitar a vida ao programador, e não por "ser preciso", podes programar em exclusivamente em assembly se quiseres, mas sinceramente não sei onde é que isso te vai facilitar a vida.

só assim por curiosidade, já viste o aspecto do código assembly?

#10 zeb

zeb

    null

  • Membro
  • Pip
  • 17 mensagens

Publicado 08 de Julho de 2007 - 10:52

para te dizer a verdade, tou mais a vontade em C do que assembley ate porque assembley so dei em, microprocessadores e nao foi nada a fundo so estudei as instruçoes nao tivemos tempo para as aplicar, agora no 3º ano e que vamos dar isto mais a fundo em microcontroladores, por isso e que por agora tava a penas a pensar fazer a parte de hardware para dps fazer o software, visto que ainda nao tou ainda muito a vontade com programaçao de microcontroladores, nada que com estudo nao se consiga atingir...

#11 pedrotuga

pedrotuga

    Stack Overflow

  • Membro
  • PipPipPipPipPipPipPip
  • 7517 mensagens

Publicado 08 de Julho de 2007 - 10:57

Ver Mensagemzeb, em 08 de Julho de 2007 - 10:52, disse:

para te dizer a verdade, tou mais a vontade em C do que assembley ate porque assembley so dei em, microprocessadores e nao foi nada a fundo so estudei as instruçoes nao tivemos tempo para as aplicar, agora no 3º ano e que vamos dar isto mais a fundo em microcontroladores, por isso e que por agora tava a penas a pensar fazer a parte de hardware para dps fazer o software, visto que ainda nao tou ainda muito a vontade com programaçao de microcontroladores, nada que com estudo nao se consiga atingir...
Isso! Boa atitude.
C é muito mais facil de escrever do que assembly, força nisso, vai dando noticias.

#12 mynos

mynos

    null

  • Membro
  • Pip
  • 12 mensagens

Publicado 08 de Julho de 2007 - 18:18

O MPLAB é o programa que uso para escrever código em C, podesse no entanto escrever o codigo em assembly mas as coisas complicam-se inevitavelemente a nao ser que sejam programa muito simples...
Depois de compilado o programa é gerado um .hex que é carregado para o PIC. Para carregar o .hex no PIC  estou a usar o PICload que foi desenvolvido na UA por um professor e é freeware.

Acerca dos motores serem passo a passo tens de ver o hardware que já tens, e o que precisas desenvolver. Para me explicar melhor precisas de ver o tipo de controlo necessario por parte do PIC, ou seja, os sinais necessarios a gerar, e qual o Hardware de interface entre o PIC e os motores. Para os motores precisas de um circuito de alimentaçao, e outro de controlo. Nao sei como é o sistema, se ja tem a parte de alimentaçao dos motores, ou se tens apenas a camara e vais desenhar um sistema mecanico com dois motores passo a passo e implementar todo o hardware de potencia e controlo, ou se ja tens um sistema funcional com dois motores, operado por exemplo atraves de um joystick e so tens de te preocupar realmente com os circuitos de controlo por RF e circuitos de condicionamento de sinal do PIC.... Bom para te poder ajudar ao nivel dos motores precisava de saber o que ja tens e como tens...

Cumps
mynos

#13 zeb

zeb

    null

  • Membro
  • Pip
  • 17 mensagens

Publicado 09 de Julho de 2007 - 21:08

eu para ja ainda so tnh a camara, e um pequeno trabalho de emissao de video tambem por RF, ja a funcionar.
visto que ainda ta numa fase inicial por agora tou so a amrmazenar maius ou menos informaçao daquilo que possa vir a precisar, para poder mandar vir material visto que ainda demora um bocado.
para a camara vou ter criar um sistema mecanico  com dois motores para a fazer mexer e o comando.
agora tou mais empenhado  em fazer o comando de controlo da camara que para alem da progarmaçao acho que é o mais dificili.

#14 mynos

mynos

    null

  • Membro
  • Pip
  • 12 mensagens

Publicado 09 de Julho de 2007 - 21:58

Ok, entao  ainda tens realmente muito que fazer...
Mas entretanto agora que as coisas começam a ficar mais ou menos delineadas,  fiquei sem perceber uma coisa?! porque vais usar motores passo a passo?!

Mais um conselho meu que já estive a mexer com motores e microcontroladores... usa servo-motores... tens duas vertentes neste tipo de motor controlado por uma onda quadrada com ciclo de 1ms, salvo erro, onde varias apenas o Duty-Cycle. Originalmente o duty-cycle da onda quadrada dá a posição do eixo, ou seja, uma onda com duty clycle de 50% mete o motor na posição central, e por ai fora. Este controlo da posição limita o servomotor a operar por exemplo entre 0 e 180º. Mas a alteração do servomotor é mt simples e permite fazer com que este rode 360 graus e o duty cycle passa a ser para controlar a velocidade de rotaçao em vez da posiçao. Para a alimentaçao deste tipo de motores existem as chamadas pontes-H que já têm todo o hardware necessario à alimentaçao do servomotor.Basta assim alimentar com uma tensao DC à entrada da ponte e meter o sinal quadrado nos seus pinos que o fornecimento de corrente fica a cargo deste componente (aconcelho a meter um dissiapador porque em momentos de mt operaçao a ponte aquece e bem !  ;)).

Para geraçao do sinal quadrado no PIC tens pelo menos duas formas de a fazer, que me lembram agora de repente... tens o modulo PWM ja nativo do PIC e podes por exemplo ligar um pino de saida TTL a high meter um contador a contar e quando expirar metes esse pino a low e voltas a iniciar o contador e assim sucessivamente...é simples.

Os servomotores têm a desvantagem em relação aos motores de passo, de nao terem o chamado "holding torque", que é manter a posiçao enquanto nao tem alimentaçao. Assim quando desligares o sistema os motores deixam de fazer força, o que pode ser problematico...nao sei... Esses efeitos podem ser minorados com o desenho do sistema mecanico...se o peso da camara nao estiver aplicado no eixo do motor, e o motor sirva apenas para provocar movimento e nao para suportar a camara, quando desligares o sistema,  a menos de forças do vento ou exteriores, a camara nao se deve mexer...promenores...

A vantagem dos servomotores é que sao faceis de controlar, sao baratos (20-40€ já sao bons motores) tem bastante força mesmo  no eixo, sao rapidos, sao leves, e se mantiveres a alimentaçao têm mt "holding torque" ( para veres servomotores procura em aeromodelismo).
Para estes motores so precisas de duas pontes H (procura por ponte H que encontras mt coisa, tens de escolher o motor e depois a ponte que o consgia sustentar  :D), para as alteraçoes do servomotor podes procurar mesmo por "alterar servomotor para 360º" que existem manuais ilustrados e se quiseres mando-te isso, e para o controlo ja te expliquei...

Quanto ao sistema mecanico vais ter dois eixos de movimento certo?! Em azimute e em elevaçao....

Cumps mynos...
Quero ver isso depois a mexer..  :biggrin:

#15 zeb

zeb

    null

  • Membro
  • Pip
  • 17 mensagens

Publicado 12 de Julho de 2007 - 18:56

pelo que disseste estes motores parecem bem mais eficazes que os de passo tendo a desvantagem de nao terem torque quando estao deslidagos.
quanto ao sitema mecanico aainda nao pensei muito como tu tu disseste pormenores.
quanto ao grau de rotaçao dos motores chega perfeitamente 180º.
nao percebi uma coisa... com um duty cycle de 50º omotor roda 180º certo???
em termos de velocidade como e que se controla a velocidade de rotaçao do motor????
este tipo de motores dao para inverter a rotaçao em qualquer altura,por exemplo ta a rodar para a direita e carrego para rodar para a esquerda, ou tem um fim de curso.isto,e quando chega a um certo angulo volta para traz'?????...
ja agora manda isso de alterar o servomotor para 360º para hugozeb@hotamil.com

#16 pedrotuga

pedrotuga

    Stack Overflow

  • Membro
  • PipPipPipPipPipPipPip
  • 7517 mensagens

Publicado 12 de Julho de 2007 - 19:07

Normalmente é do estilo:
1ms - > zero graus
0ms - > -180 graus
2ms - > 180 graus

Podes controlar a velocidade através do tempo que demoras a passar de um desses valores no duticycle para para outro.
Mas estes motores sao frequentemente usados sem atenção a isso... ou seja, move-se para determinado angulo e não interessa o tempo que o servo demora a ir para lá, desde que o faça o mais rapido possivel.
Isto digo eu que tenho pouca experiencia com isto.