LusoRobótica - Robótica em Português

Robótica => Projectos de robótica => Projectos em desenvolvimento => Tópico iniciado por: Kcidade em 13 de Junho de 2012, 19:30

Título: Segway
Enviado por: Kcidade em 13 de Junho de 2012, 19:30
Boas pessoas inteligentes xD

Já alguem desenvolveu uma especie de segway? 
É que eu comecei a desenvolver um, utilizando dois motores, 1 arduino, um drive (ponte H) e um acelereometro, que retirei de um nunchuck da wii.

Eu já consigo obter os dados do acelerometro, posto isto desenvolvi um programa do tipo quanto mais inclinado tiver maior e' a velocidade dos motores, mas com este programa não funciona correctamente, pois parece mais um segway "borrachom" xD

Eu sei que tenho que utilizar umas "cenas" a que chamam de filtros e PID.. Será que alguem me consegue dar umas dicas para isto

Com os melhores cumprimentos
Kcidade
Título: Re: Segway
Enviado por: senso em 13 de Junho de 2012, 20:03
Tens de usar giroscópios, um acelerómetro não vai funcionar da maneira que queres.
Existem alguns projectos desses pela internet fora.
Título: Re: Segway
Enviado por: ivitro em 13 de Junho de 2012, 20:22
Dá uma vista de olhos nisto:

web.mit.edu/scolton/www/filter.pdf
Título: Re: Segway
Enviado por: Kcidade em 13 de Junho de 2012, 20:31
Tens de usar giroscópios, um acelerómetro não vai funcionar da maneira que queres.
Existem alguns projectos desses pela internet fora.

Obrigado Senso, eu ja tive á procura e não vi grande coisa. Qual o nome que se costuma de chamar a estes projectos (sem ser segway)?
Título: Re: Segway
Enviado por: Kcidade em 13 de Junho de 2012, 20:31
Dá uma vista de olhos nisto:

web.mit.edu/scolton/www/filter.pdf

Obrigado Ivitro =D
Título: Re: Segway
Enviado por: senso em 13 de Junho de 2012, 20:53
http://diysegway.blogspot.pt/ (http://diysegway.blogspot.pt/)

Provavelmente tens ai tudo o que precisas de saber.
Título: Re: Segway
Enviado por: Kcidade em 13 de Junho de 2012, 21:14
http://diysegway.blogspot.pt/ (http://diysegway.blogspot.pt/)

Provavelmente tens ai tudo o que precisas de saber.

Obrigado =D
Título: Re: Segway
Enviado por: SJD22 em 13 de Junho de 2012, 21:15
Já agora que motores estás a usar e onde os adquiriste?

obrigado.
Título: Re: Segway
Enviado por: Kcidade em 13 de Junho de 2012, 21:40
Já agora que motores estás a usar e onde os adquiriste?

obrigado.

Boas, estou a usar uns da pololu.
http://www.google.com/imgres?q=motores+pololu&um=1&hl=pt-PT&client=firefox-a&sa=N&rls=org.mozilla:pt-PT:official&biw=1024&bih=648&tbm=isch&tbnid=nIPJIG7sTUJ3DM:&imgrefurl=http://www.diybin.com/products/Pololu-298-to-1-Micro-Metal-Gearmotor-with-Extended-Motor-Shaft.html&docid=qO8YZnQu9f8wWM&imgurl=http://www.diybin.com/product_images/r/291/PL-2208-1__84675_zoom.jpg&w=600&h=377&ei=S_jYT8mYNKTD0QWw1_SqBA&zoom=1&iact=rc&dur=411&sig=101137276400917393803&page=1&tbnh=136&tbnw=220&start=0&ndsp=14&ved=1t:429,r:7,s:0,i:93&tx=77&ty=32 (http://www.google.com/imgres?q=motores+pololu&um=1&hl=pt-PT&client=firefox-a&sa=N&rls=org.mozilla:pt-PT:official&biw=1024&bih=648&tbm=isch&tbnid=nIPJIG7sTUJ3DM:&imgrefurl=http://www.diybin.com/products/Pololu-298-to-1-Micro-Metal-Gearmotor-with-Extended-Motor-Shaft.html&docid=qO8YZnQu9f8wWM&imgurl=http://www.diybin.com/product_images/r/291/PL-2208-1__84675_zoom.jpg&w=600&h=377&ei=S_jYT8mYNKTD0QWw1_SqBA&zoom=1&iact=rc&dur=411&sig=101137276400917393803&page=1&tbnh=136&tbnw=220&start=0&ndsp=14&ved=1t:429,r:7,s:0,i:93&tx=77&ty=32)
Título: Re: Segway
Enviado por: senso em 13 de Junho de 2012, 21:46
Poranto, estás só na parte de um balancing robot e não de um segway para levar uma pessoa em cima...
Procura por balancing robot, aparece muita coisa.
Título: Re: Segway
Enviado por: SJD22 em 13 de Junho de 2012, 22:28
Pois, com esses motores nao leva ninguem em cima :)
Título: Re: Segway
Enviado por: Kcidade em 13 de Junho de 2012, 23:56
Pois, é isso. Não fui bem explicito xD
Título: Re: Segway
Enviado por: Kcidade em 15 de Junho de 2012, 23:21
Ok, desisto!
Não consigo perceber o funcionamento dos filtros :S
Alguem me pode tentar explicar? Ou furnecer um codigo comentado.
Eu estou a utilizar como acelerometro um nunchuck da wii. Se fosse possivel "fazerem o codigo" já proprio para o comando Agradecia.
Título: Re: Segway
Enviado por: senso em 15 de Junho de 2012, 23:51
Acho que deves começar por ler muito sobre o assunto.
Que filtros te referes?
Como estás a usar um acelerómetro a primeira coisa é leres sobre como usar trigonometria para tirar o valor da inclinação em X e Y a partir dos valores do acelerómetro.
Depois disso, o mais simples é agarrar numa biblioteca PID, que tenha como set-point uma inclinação de 0º e que tenha como saida o pwm de controlo dos motores, com sinal(variavel int e não unsigned int) e a partir do sinal até tirar logo o sentido de rotação dos motores.
De um modo simplificado é isso, depois podes precisar de juntar um filtro que pode ser algo tão simples como uma média de 2,4 ou 8 valores do acelerómetro para limpar o ruido inerente do mesmo, que é para o robot não começar a oscilar devido a estar tentar corrigir oscilações de menos de um grau por exemplo.

Como primer deixo-te isto:
http://electronics.stackexchange.com/questions/2844/calculating-inclination-using-accelerometer (http://electronics.stackexchange.com/questions/2844/calculating-inclination-using-accelerometer)
E uma App-note da Analog Devices que é uma excelente introdução precisamente ao que precisas de fazer:
http://www.analog.com/static/imported-files/application_notes/AN-1057.pdf (http://www.analog.com/static/imported-files/application_notes/AN-1057.pdf)
Título: Re: Segway
Enviado por: FET_Destroyer em 16 de Junho de 2012, 17:36
Boas Kcidade
Eu tambem ando à quase uma eternidade para construir um robot desses, ja tenho o hardware todo feito mas por falta de tempo nunca me deciquei ao codigo, no entanto encontrei um site muito bom. Neste site eles tem documentação toda, teoria, código comentado, etc, muito bom, é um bom ponto de partida.

Cumps

http://www.segwii.com/ (http://www.segwii.com/)

Título: Re: Segway
Enviado por: Kcidade em 17 de Junho de 2012, 16:54
Boas Kcidade
Eu tambem ando à quase uma eternidade para construir um robot desses, ja tenho o hardware todo feito mas por falta de tempo nunca me deciquei ao codigo, no entanto encontrei um site muito bom. Neste site eles tem documentação toda, teoria, código comentado, etc, muito bom, é um bom ponto de partida.

Cumps

http://www.segwii.com/ (http://www.segwii.com/)

Obrigado FET_Destroyer. Já agora tu so estás a utilizar um acelerometro ou estas a usar um giroscopio tambem?
Título: Re: Segway
Enviado por: FET_Destroyer em 17 de Junho de 2012, 18:21
Boas Kcidade, eu no meu robot estou a usar um giroscópio e um acelerometro. Penso que só com um sensor não vais conseguir fazer o robot equilibrar-se. Na realidade só precisarias de um giroscópio pois ele dá-te velocidade angular por segundo, se integrares ao longo do tempo tens o ângulo, agora o problema destes giroscópios MEMS é que têm drift ao longo do tempo devido ao aumento da temperatura do sensor, resumidamente, o valor começa a deixar de ser preciso passado algum tempo e o teu robot vai acabar por cair, dai usarem o acelerometro para compensar. Dão mais peso ao valor do giroscópio e menos peso ao valor do acelerometro penso eu. Se vires o site que te mandei, o código eles tem lá tudo muito bem comentado, existem outros códigos também muito bons e fáceis de perceber mas este penso que seja o melhor.

Ai podes ver fotos do meu, só falta mesmo programar, espero este ano com algum tempo por isso a dar (finalmente).
http://fetdestroyer.blogspot.pt/2011/01/segbot-saguim.html (http://fetdestroyer.blogspot.pt/2011/01/segbot-saguim.html)

Cumps
Título: Re: Segway
Enviado por: Kcidade em 17 de Junho de 2012, 18:51
Tá muito fixe o teu, o meu é muito mais pequeno, mas devo começar de novo e fazer um do genero do teu ;)

Qual é o giroscopio que utilizas no teu?

Cumpz ;)
Título: Re: Segway
Enviado por: FET_Destroyer em 18 de Junho de 2012, 12:18
Tá muito fixe o teu, o meu é muito mais pequeno, mas devo começar de novo e fazer um do genero do teu ;)

Qual é o giroscopio que utilizas no teu?

Cumpz ;)

O meu é desse tamanho porque na altura a primeira versao tinha muitas pcbs, agora embuti tudo numa pcb e as outras 'prateleiras' do robot ficaram vazias. lol Eu estou a usar um ADXRS150(giro de 1eixo) e um ADXL330( accel de 3 eixos mas so uso 2) mas se fores ao ebay encontras coisas muito baratos tipo isto

http://www.ebay.com/itm/6DOF-MPU6050-3-Axis-Gyroscope-AND-Acce-lerometer-For-MWC-IMU-Arduino-Compatible-/180893100510?pt=LH_DefaultDomain_0&hash=item2a1e11a9de#ht_1568wt_952 (http://www.ebay.com/itm/6DOF-MPU6050-3-Axis-Gyroscope-AND-Acce-lerometer-For-MWC-IMU-Arduino-Compatible-/180893100510?pt=LH_DefaultDomain_0&hash=item2a1e11a9de#ht_1568wt_952)

Cumps
Cumps
Título: Re: Segway
Enviado por: Nunito em 19 de Setembro de 2014, 13:34
Fet Destroyer.

Tiveste problemas em utilizar o MPU6050?
Eu estou a fazer um self robot mas com o código a utilizar juntamente com o MPU6050 está a apareçer uma mensagem:
Initializing DMP...
Enabling DMP...
Enabling interrupt detection (Arduino external interrupt 0)...
DMP ready! Waiting for first interrupt...

O teu é com arduino e ponte H?

Cumprimentos, Nuno