Offline
Newbie
Karma: 0
Posts: 25
|
 |
« on: June 13, 2011, 09:09:43 pm » |
Tenho um servo motor de 9gr, um HXT900 queria saber se é possivel que ele execute valores negativo, preciso que ele fica no angulo 0, e se mova 45º e -45º
[]'s
|
|
|
|
|
Logged
|
|
|
|
|
Brasil
Offline
Newbie
Karma: 0
Posts: 49
Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson)
|
 |
« Reply #1 on: June 14, 2011, 07:45:46 am » |
Bom dia,
Nunca vi angulos negativos em servo motores, mas ele nao poderia ficar no angulo 45, e mover para 0 e 90? assim ele teria os mesmos 45 graus de mobilidade para ambos os lados.
|
|
|
|
|
Logged
|
-- Anthony M. Collucci (0xx31)9243-1690 http://amcollucci.com.br http://astrobrasil.blogspot.com http://code.google.com/p/kimx/2º Lugar no Campeonato Mineiro de Tae Kwon Do 2011 Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson) "Se não fosse imperador, desejaria ser professor. Não conheço missão maior e mais nobre que a de dirigir as inteligências jovens e preparar os homens do futuro." (D. Pedro II) "Alguém cujo espírito e força mental, se fortaleceram através das lutas com uma atitude de nunca desanimar não deve encontrar dificuldades em enfrentar nenhum desafio, por maior que ele seja. Alguém que suportou longos anos de sofrimento físico e agonia mental para aprender um soco ou um chute, deve ter condições de encarar qualquer tarefa, por mais difícil que ela seja, e de executá-la até o fim." Ginshin Funakoshi - O Pai do Karate-Do, e fundador estilo Shotokan
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 25
|
 |
« Reply #2 on: June 14, 2011, 08:16:43 am » |
Bom dia,
Nunca vi angulos negativos em servo motores, mas ele nao poderia ficar no angulo 45, e mover para 0 e 90? assim ele teria os mesmos 45 graus de mobilidade para ambos os lados.
Exatamente  havia pensado nisso, e até cheguei a testar, a lógica está certa o centro dele seria 45º, para a direita colocaria 90º e esquerda 0º (ou vice-versa rs) o problema é, toda vez que o sistema é desligado e é cortado a energia do servo, ele volta sozinho para um determinado angulo, não lembro exatamente qual angulo  (to pensando agora enquanto escrevo)...as vezes posso usar esse angulo que ele fica quando desligado para ser o centro né? e ai trabalhar adicionando ou retirando 45º dele alguem sabe o angulo que ele fica quando desligado? []'s
|
|
|
|
|
Logged
|
|
|
|
|
Brasil
Offline
Newbie
Karma: 0
Posts: 49
Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson)
|
 |
« Reply #3 on: June 14, 2011, 08:40:23 am » |
Esse servo motor funciona como se fosse um servo motor de aeromodelo? pois eu tinha o mesmo problema...
se for, eu fiz o seguinte, joguei fora a servo.h.. e criei uma rotina que enviava os pulsos na largura correspondente ao angulo. e o ponto de partida era a largura do angulo que eu definia como inicial.
Se ele funcionar como um servo de aeromodelo eu posto aqui meu codigo pra ver se te ajuda...
|
|
|
|
|
Logged
|
-- Anthony M. Collucci (0xx31)9243-1690 http://amcollucci.com.br http://astrobrasil.blogspot.com http://code.google.com/p/kimx/2º Lugar no Campeonato Mineiro de Tae Kwon Do 2011 Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson) "Se não fosse imperador, desejaria ser professor. Não conheço missão maior e mais nobre que a de dirigir as inteligências jovens e preparar os homens do futuro." (D. Pedro II) "Alguém cujo espírito e força mental, se fortaleceram através das lutas com uma atitude de nunca desanimar não deve encontrar dificuldades em enfrentar nenhum desafio, por maior que ele seja. Alguém que suportou longos anos de sofrimento físico e agonia mental para aprender um soco ou um chute, deve ter condições de encarar qualquer tarefa, por mais difícil que ela seja, e de executá-la até o fim." Ginshin Funakoshi - O Pai do Karate-Do, e fundador estilo Shotokan
|
|
|
|
|
|
Brasil
Offline
Newbie
Karma: 0
Posts: 49
Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson)
|
 |
« Reply #5 on: June 14, 2011, 10:03:09 am » |
vou te mandar ele, hoje a noite, pois estou no trampo...
ja que e esse tipo de servo deixa eu te dar outra dica,
vc tem de usar um rele ou um "opto acoplador" esse ultimo eu nao testei.. pois quando o arduino boota, ele manda um codigo aleatorio para todas as portas.. isso e interpretado pelo servo e faz ele ficar maluco... quando eu estava tentando montar um hexapode, destrui ele todo, pois os servos se movimentavam loucamente, toda vez que eu ligava o arduino.
quanto a posição, e o seguinte, quando o servo vai se mover e enviado para ele um sinal para ele ir para determinado ponto. na biblioteca servo.h, parte do principio que ele esteja no inicio do seu movimento ou seja no grau 0, portanto quando vc envia o sinal ele volta para o grau 0 e começa a se deslocar de acordo com o passo configurado na biblioteca.
No que fiz, eu defino qual e o ponto inicial, a partir, da necessidade mecanica, por exemplo no meu braço mecanico precisava que o servo iniciasse em 93graus.
Vou te enviar o codigo e vc analiza, e veja se o seu problema e o mesmo que o meu.
att,
|
|
|
|
|
Logged
|
-- Anthony M. Collucci (0xx31)9243-1690 http://amcollucci.com.br http://astrobrasil.blogspot.com http://code.google.com/p/kimx/2º Lugar no Campeonato Mineiro de Tae Kwon Do 2011 Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson) "Se não fosse imperador, desejaria ser professor. Não conheço missão maior e mais nobre que a de dirigir as inteligências jovens e preparar os homens do futuro." (D. Pedro II) "Alguém cujo espírito e força mental, se fortaleceram através das lutas com uma atitude de nunca desanimar não deve encontrar dificuldades em enfrentar nenhum desafio, por maior que ele seja. Alguém que suportou longos anos de sofrimento físico e agonia mental para aprender um soco ou um chute, deve ter condições de encarar qualquer tarefa, por mais difícil que ela seja, e de executá-la até o fim." Ginshin Funakoshi - O Pai do Karate-Do, e fundador estilo Shotokan
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 25
|
 |
« Reply #6 on: June 14, 2011, 10:13:21 am » |
vou te mandar ele, hoje a noite, pois estou no trampo...
ja que e esse tipo de servo deixa eu te dar outra dica,
vc tem de usar um rele ou um "opto acoplador" esse ultimo eu nao testei.. pois quando o arduino boota, ele manda um codigo aleatorio para todas as portas.. isso e interpretado pelo servo e faz ele ficar maluco... quando eu estava tentando montar um hexapode, destrui ele todo, pois os servos se movimentavam loucamente, toda vez que eu ligava o arduino.
quanto a posição, e o seguinte, quando o servo vai se mover e enviado para ele um sinal para ele ir para determinado ponto. na biblioteca servo.h, parte do principio que ele esteja no inicio do seu movimento ou seja no grau 0, portanto quando vc envia o sinal ele volta para o grau 0 e começa a se deslocar de acordo com o passo configurado na biblioteca.
No que fiz, eu defino qual e o ponto inicial, a partir, da necessidade mecanica, por exemplo no meu braço mecanico precisava que o servo iniciasse em 93graus.
Vou te enviar o codigo e vc analiza, e veja se o seu problema e o mesmo que o meu.
att,
Po cara, é esse mesmo problema pelo que percebi rs ele ficava meio malucao quando eu ligava o arduino, ta explicado entao rs Entendi o lance dos graus, ficarei muito agradecido se compartilhar sua biblioteca, estou no trabalho agora, só irei mexer nele anoite tambem hehehe E seu hexapode ficou bom? tem video, foto? queria ver  hehe Abracos!
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 25
|
 |
« Reply #7 on: June 15, 2011, 09:35:20 am » |
Fiquei esperando  rs []'s
|
|
|
|
|
Logged
|
|
|
|
|
Brasil
Offline
Newbie
Karma: 0
Posts: 49
Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson)
|
 |
« Reply #8 on: June 15, 2011, 03:34:03 pm » |
Desculpe,
minha esposa esta doente, fui com ela no medico, e so agora estou lendo meus e-mails.. esto na faculdade, amanha cedo eu coloco o codigo sem falta.
att,
|
|
|
|
|
Logged
|
-- Anthony M. Collucci (0xx31)9243-1690 http://amcollucci.com.br http://astrobrasil.blogspot.com http://code.google.com/p/kimx/2º Lugar no Campeonato Mineiro de Tae Kwon Do 2011 Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson) "Se não fosse imperador, desejaria ser professor. Não conheço missão maior e mais nobre que a de dirigir as inteligências jovens e preparar os homens do futuro." (D. Pedro II) "Alguém cujo espírito e força mental, se fortaleceram através das lutas com uma atitude de nunca desanimar não deve encontrar dificuldades em enfrentar nenhum desafio, por maior que ele seja. Alguém que suportou longos anos de sofrimento físico e agonia mental para aprender um soco ou um chute, deve ter condições de encarar qualquer tarefa, por mais difícil que ela seja, e de executá-la até o fim." Ginshin Funakoshi - O Pai do Karate-Do, e fundador estilo Shotokan
|
|
|
|
Brasil
Offline
Newbie
Karma: 0
Posts: 49
Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson)
|
 |
« Reply #9 on: June 16, 2011, 10:59:45 am » |
Veja o codigo, ele ainda nao esta generalizado, mas pretendo escrever uma versão como uma lib..
// define o pino em que o servo esta conectado const unsigned int servobase = 6; const unsigned int servoelev = 7; const unsigned int servogarra = 8; // definem o maximo e o minimo em Microsegundos, da largura do pulso // vou transforma isso em um array, para poder ter limites maximos diferentes para cada servo unsigned int maximo = 2400; unsigned int minimo = 70; //Armazena o ultimo passo enviado para o servo, evitando que ele receba um comando para permanecer onde esta, evitando assim trepidação
//Criar uma variavel homeposition - para armazenar a posicaço inicial unsigned int ultimopasso [12]; // intervalo em Milisegundos entre um pulso e outro unsigned int interval = 15; //velocidade com que o servo movimenta unsigned int velocidade = 5; void setup(){ ultimopasso [servobase]=minimo + (maximo/180)*89; ultimopasso [servoelev]=minimo + (maximo/180)*90; ultimopasso [servogarrra]=minimo + (maximo/180)*90; pinMode (servobase, OUTPUT); pinMode (servoelev, OUTPUT); pinMode (servogarra, OUTPUT); passo (servobase, 90); passo (servoelev,93); passo (sevogarra,90); } void loop(){
}
posinicial(); }
void posinicial(){ passo (servobase, 90); passo (servoelev,93); passo (sevogarra,90); }
void passo (int _grau, int _servo){ unsigned int _passo= minimo + (maximo/180)*_grau; if (ultimopasso[_servo] != _passo){ //impede a repetição do mesmo passo senao fosse assim causaria trepidação if (ultimopasso[_servo] < _passo){ //se o servo estiver antes da proxima posição ele avança for (int i=ultimopasso[_servo];i<_passo;i= i + velocidade){ digitalWrite (_servo, 1); delayMicroseconds(i); digitalWrite (_servo, 0); delay(15); } }else{ //caso contrario ele recua for (int i=ultimopasso[_servo];i>_passo;i= i - velocidade){ digitalWrite (_servo, 1); delayMicroseconds(i); digitalWrite (_servo, 0); delay(15); } } } ultimopasso[_servo] = _passo; //grava o ultimo passo }
|
|
|
|
|
Logged
|
-- Anthony M. Collucci (0xx31)9243-1690 http://amcollucci.com.br http://astrobrasil.blogspot.com http://code.google.com/p/kimx/2º Lugar no Campeonato Mineiro de Tae Kwon Do 2011 Existem três frases que vão levar sua vida em diante: "Não diga que fui eu", "Já estava assim quando cheguei" e "Oh que boa idéia chefe". (Homer Simpson) "Se não fosse imperador, desejaria ser professor. Não conheço missão maior e mais nobre que a de dirigir as inteligências jovens e preparar os homens do futuro." (D. Pedro II) "Alguém cujo espírito e força mental, se fortaleceram através das lutas com uma atitude de nunca desanimar não deve encontrar dificuldades em enfrentar nenhum desafio, por maior que ele seja. Alguém que suportou longos anos de sofrimento físico e agonia mental para aprender um soco ou um chute, deve ter condições de encarar qualquer tarefa, por mais difícil que ela seja, e de executá-la até o fim." Ginshin Funakoshi - O Pai do Karate-Do, e fundador estilo Shotokan
|
|
|
|
|