Pages: 1 [2]   Go Down
Author Topic: proje hexapod  (Read 2493 times)
0 Members and 1 Guest are viewing this topic.
Portugal
Offline Offline
Edison Member
*
Karma: 27
Posts: 1414
Tomorrow I will know a BIT more than yesterday
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Eu trabalho imenso com mecânicos (não engenheiros mecânicos, note-se) e reparo que a maneira mais simples de lhes explicar electricidade é falando em termos hidráulicos. Como a energia pode assumir imensas formas e manifestar-se de diferentes maneiras, se olharmos para o fluxo energético dum sistema podemos ver uma analogia doutro sistema em que a energia sofre a mesma transformacão. Exemplo...
Eu por vezes exemplifico isso como uma barragem.A altura do nivel da agua é a Tensao e a força com que a agua desce mediante a RESISTENCIA que a comporta lhe ofereçe é a CORRENTE. Desta forma se baixar mos a resitencia da comporta temos muita corrente a circular e a tensao ira com o passar do temmmmmpooooooo começar a baixar. smiley-mr-green
Outra piada que gosto de dizer é que a eletricidade é como o "ar", não se vê mas sente-se  smiley-mr-green smiley-mr-green as vezes da pior maneira!
Logged

Debian,Mint,Ubuntu
Arduino Mega 2560
Arduino Nano
Arduino Duemilanove
MAC OS Montain Lion
Raspberry PI Model B


'round the world...
Offline Offline
Faraday Member
**
Karma: 41
Posts: 3110
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hmmm, essa também é uma boa analogia. smiley
Logged

Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

Offline Offline
God Member
*****
Karma: 12
Posts: 508
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Outra piada que gosto de dizer é que a eletricidade é como o "ar", não se vê mas sente-se  smiley-mr-green smiley-mr-green as vezes da pior maneira!

Muito boa! smiley-lol

A noção de corrente, tensão, potência e resistência eu já consegui assimilar (eu acho rs)... a transformação é que quero perceber melhor, os drivers de motor blusheless por exemplo (quando tiver um em mãos, desmonto dele!!! smiley-grin), mas continuarei a pesquisar e e acompanhar os posts por aqui.

Muito obrigado!
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

 aqueles que me pediram o programa ainda nao tenho ele completo mais logo terei e passarei a todos , em relação a corrente tende-se a colocar um transistor em paralelo ou 7805 para poder ter corrente o suficiente para os servos ,(cada servo motor micro consome 500 ma e os standard 1A , são 12  servos micro e 6 standard) !!!
obrigado pela atenção de vcs!!!
Logged

Curitiba PARANÁ
Offline Offline
Newbie
*
Karma: 0
Posts: 19
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Dark, desculpa a demora para responder... mas vamos lá...

Quote
Na movimentação do hexapod quantos servos são ativados ao mesmo tempo? Quais servos você usa e qual o consumo de corrente?

eu separei em movimentos por membros (o membro constitui de dois servos, um para mover a coxa na horizontal e outra para mover a canela na vertical).

vou te dar uma luz Dark... não quero te entregar o código pronto pois ai você não entende inhaca nenhuma do que está fazendo...

Aqui é um pedaço do código de um quadrupede que estava fazendo...

Code:
void andar_Frente(int Passos, int delayPasso)
{
  for(int passo = 0; passo<Passos; passo++)
  {
    pernaFrenteEsquerdo.write(135);
    delay(delayPasso);
    coxaFrenteEsquerdo.write(135);
    delay(delayPasso);
    pernaFrenteEsquerdo.write(100);
    delay(350);
    pernaTrasDireito.write(45);
    delay(delayPasso);
    coxaTrasDireito.write(45);
    delay(delayPasso);
    pernaTrasDireito.write(100);
    delay(350);
    coxaFrenteEsquerdo.write(45);
    coxaFrenteDireito.write(135);
    coxaTrasEsquerdo.write(45);
    coxaTrasDireito.write(135);
    delay(350);

entenda o seguinte... essa função é chamada em algum momento do loop ou em uma outra função.. ai é você que escolhe... mas essa função recebe duas variáveis, Passos = a quantidade de passos que pretendo dar e delayPasso = intervalo para cada passo(entenda que um passo completo depende de movimentos separados).

Dentro dela, há um "for", a comparação é inciada com a inicialização do inteiro "passo". A ideia deste inteiro é saber em que passo eu estou e comparar se já dei a quantidade de passos que quero, a comparação é passo<Passos (o "passo" em que estou é "<" menor a quantidade de "Passos" que quero?) ?
Como você deve saber, o comparativo de "for" é o motivo da execução, então, se "passo<Passos": execute o comando logo abaixo, caso contrário: saia do "for".

Sei que expliquei até demais, MAS, é sempre bom deixar sobrando do que faltando...

Já dentro do "for", os comandos são referentes aos servos de cada membro. Para isso, você irá verificar em qual posição seu servo está instalado e em qual angulo ele gira dependendo do local instalado.

ai é com você fazer o esquema do passo a passo de um passo... entendeu?? Espero que sim...

agora... sobre os servos e o consumo de corrente...

eu utilizo servos HX5010. http://lista.mercadolivre.com.br/-HX5010

já em relação a corrente em que eles consomem... eu me dei ao luxo de comprar um shield responsável pela comunicação em PWM das 13 portas DIGITIAS. o shield é o DFRduino I/O Expansion V5.0, comprei pelo Mercado Livre também: http://produto.mercadolivre.com.br/MLB-476536670-modulo-shield-de-expanso-de-io-com-suporte-xbee-arduino-_JM


Velho... espero ter ajudado...

Logged

'round the world...
Offline Offline
Faraday Member
**
Karma: 41
Posts: 3110
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

delay???
Logged

Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

Curitiba PARANÁ
Offline Offline
Newbie
*
Karma: 0
Posts: 19
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sim.

É que eu utilizo uma função que não comentei... ela é responsável pela velocidade do andar...

é uma forma de fazer o robô andar bem devagar ou muito rápido...

Logged

'round the world...
Offline Offline
Faraday Member
**
Karma: 41
Posts: 3110
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

O uso do delay deve ser evitado ao máximo.
Logged

Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

Curitiba PARANÁ
Offline Offline
Newbie
*
Karma: 0
Posts: 19
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Porque?? estamos saindo fora do foco... mas é interessante...
Logged

'round the world...
Offline Offline
Faraday Member
**
Karma: 41
Posts: 3110
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Pura e simplesmente porque é um desperdício. O delay é o equivalente a deixares a luz acesa quando sais dum quarto pela comodidade de não teres de a ligar ao entrares de novo no quarto. Consumiste energia, não a aproveitaste e o tempo entre ligar o interruptor e veres luz sair da lâmpada é nulo (isto com incandescentes, obviamente).

Com o delay ainda é pior. O processador fica literalmente a contar carneirinhos e não liga puto ao que se passa à sua volta... isto causa problemas. Se fosse possível contabilizar o número de posts neste fórum em que o problema era um delay mal usado, acredita que o numero seria bastante elevado. Bastante mesmo... tudo porque o delay deve ser usado para uma dezena de milisegundos. Nunca como se vê aqui para minutos ou algo mais (como já vi noutra thread).
Eu compreendo que exista quem não saiba de outra maneira, mas exemplificar com um delay é errado... ou pelo menos deve ser acompanhado dum aviso que o delay não é ideal mas pode servir para a situacão em questão.

Se o projecto for completamente pensado de raíz (que nunca é e muito menos com quem ainda está a aprender) provavelmente o delay pode ser usado sem grandes problemas. No entanto, ao utilizar delays grandes num programa ou como forma de fazer uma sequência estás a tirar flexibilidade ao teu programa... porque eventualmente vai aparecer a necessidade de fazer algo durante esses delays e estruturar o programa para não usar delays vai ser muito pior do que fazer um programa sem delays no início.

Não leves a mal o apontamento... mas o código e comentário que colocaste deixam muito a desejar para quem não souber o que é o delay. Entendes?
Logged

Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

Pages: 1 [2]   Go Up
Jump to: