LusoRobótica - Robótica em Português

Robótica => Projectos de robótica => Projectos em desenvolvimento => Tópico iniciado por: XicoMBD em 04 de Janeiro de 2011, 18:20

Título: Mini Arduino
Enviado por: XicoMBD em 04 de Janeiro de 2011, 18:20
Boas,

Desde ontem que ando entretido a tentar desenhar um mini arduino baseado no Boarduino (imagem em baixo), mas com algumas diferenças.

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Ft1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcQHFJvGDBP464FzhG7tXMkwsLr6AM5fYCSVXlSw6GTi0NNO-OiOHw&hash=97475804878ad7df804089f8b0df41e2cd40e836)

As minhas ideias principais para a placa são:
            -  Ter mais aplicações na área da robótica que os USB A-B normais
            -  Por vezes ficar mais barato (http://letsmakerobots.com/node/23728 (http://letsmakerobots.com/node/23728))
            -  Poupar espaço na placa
Têm mais ideias para ela? O que mais pode dar jeito?

Outra coisa, o que me tem estado a dar mais dores de cabeça até agora são os 6 pins do ICSP, eu nunca os usei nos meus arduino duemilanove.
E vocês, costumam-nos utilizar? Para que servem? Acham que vale a pena incluí-los nesta placa?
Título: Re: Mini Arduino
Enviado por: senso em 04 de Janeiro de 2011, 18:35
Os pinos do ICSP são basicamente os pinos do SPI e o do reset que no atmega328p são os pinos por onde se faz a programação por ISP, dá jeito se quiseres usar um programador ISP por exemplo para meter o bootloader no atmega, mas não me parece que seja necessário pois podes programar os atmega fora dessa placa.
Acho que vai ser dificil bateres os preços dessas placas, pois os criadores compram dezenas ou centenas de chips de cada vez.
Título: Re: Mini Arduino
Enviado por: amando96 em 04 de Janeiro de 2011, 18:44
Os pinos do ICSP estão ligados aos pinos 13, 12, 11, reset, GND e 5v(como podes ver aqui (http://arduino.cc/en/uploads/Main/arduino-duemilanove-schematic.pdf)), podes usar esses em vez da ficha 3x2 ficha essa que existe para coincidir com as fichas dos cabos dos programadores, penso não ser absolutamente necessário.
Título: Re: Mini Arduino
Enviado por: XicoMBD em 04 de Janeiro de 2011, 18:54
Os pinos do ICSP são basicamente os pinos do SPI e o do reset que no atmega328p são os pinos por onde se faz a programação por ISP, dá jeito se quiseres usar um programador ISP por exemplo para meter o bootloader no atmega, mas não me parece que seja necessário pois podes programar os atmega fora dessa placa.
Acho que vai ser dificil bateres os preços dessas placas, pois os criadores compram dezenas ou centenas de chips de cada vez.
Pois, era isso que eu tava a pensar. Quanto aos preços sei que devem ser difíceis de bater, mas o meu objectivo principal não é fazer negócio com elas, mas sim criar uma placa que seja fácil de fazer em casa e que seja fácil de adaptar. A minha ideia inicial era fazer uma placa para seguimento de linhas que pudesse dar as informações ao arduino principal por serial, i2c ou pelos pinos digitais, como der mais jeito consoante o robot. Mas decidi começar por uma coisa mais simples, esta placa, para servir como base.

Acho que o TigPT à uns tempos apresentou uma ideia aqui no fórum que acho que consistia mais ou menos nisso, ter as várias partes dos robots a comunicar por i2c para ser fácil de trocar as partes se se ter muito trabalho a programar o microcontrolador principal, não me lembro é em que tópico foi...

Os pinos do ICSP estão ligados aos pinos 13, 12, 11, reset, GND e 5v(como podes ver aqui), podes usar esses em vez da ficha 3x2 ficha essa que existe para coincidir com as fichas dos cabos dos programadores, penso não ser absolutamente necessário.
Isso já eu sabia ;)  Por isso é que tenho estado com problemas as desenhar as pistas. Acho que vou optar mesmo por o tirar...
Título: Re: Mini Arduino
Enviado por: senso em 04 de Janeiro de 2011, 18:56
Sim, é um projecto open-source para ter vários modulos de sensores e de controlo que comunicariam por i2c de preferencia, e depois era só adicionar as placas/modulos que queriamos e iria existir uma espécie de drivers para cada placa em que seria só importar um .h e ficava pronto a usar.
Título: Re: Mini Arduino
Enviado por: XicoMBD em 04 de Janeiro de 2011, 18:58
Sim, já encontrei o tópico http://lusorobotica.com/index.php?topic=2534.0 (http://lusorobotica.com/index.php?topic=2534.0).


Fazes ideia se isso avançou alguma coisa desde Julho?
Título: Re: Mini Arduino
Enviado por: senso em 04 de Janeiro de 2011, 19:10
Se ninguem disse nada é porque ficou tudo parado, eu tambem queria contribuir, ainda tenho aqui um monte de sensores para segue linha á espera de um pcb.
Título: Re: Mini Arduino
Enviado por: XicoMBD em 04 de Janeiro de 2011, 19:18
Pois, mas como não andei muito aqui no fórum durante o verão podiam ter falado e continuado isso noutros tópicos e eu não me ter apercebido.


Acho que vou tentar incluir o socket para ser compatível esse projecto, era porreiro se isso reanimasse  ::)
Título: Re: Mini Arduino
Enviado por: XicoMBD em 04 de Janeiro de 2011, 23:59
Tou aqui com uma dúvida, até agora tenho estado a pôr as pistas de alimentação com 1mm, mas dava-me jeito que fossem mais finas.
Posso pôr algumas com 0.5 mm de espessura ou aconselham-me a manter o 1 mm?
Título: Re: Mini Arduino
Enviado por: oxytech em 05 de Janeiro de 2011, 14:08
Tou aqui com uma dúvida, até agora tenho estado a pôr as pistas de alimentação com 1mm, mas dava-me jeito que fossem mais finas.
Posso pôr algumas com 0.5 mm de espessura ou aconselham-me a manter o 1 mm?

tens que calcular a corrente máxima nas pistas, e procurar a espessura recomendada para essa corrente. se estanhares as pistas ajuda bastante!
Título: Re: Mini Arduino
Enviado por: XicoMBD em 07 de Janeiro de 2011, 18:06
Assim ficou a minha 1ª tentativa.
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=971)
Ainda não experimentei adicionar os pins para esse tal projecto da LR, mas de resto acho que está a cumprir quase todas as minhas ideias iniciais, embora para poder manter a placa "single sided" e deixar  os pins do microcontrolador facilmente assessiveis para se poder adicionar outros componentes tenha deixado umas pistas do gnd apenas con 0.5mm de espessura  :-\

Mas lembrei-me agora e acho que vou adicionar um plano ligado ao gnd para resolver isso.

O que acham?
Título: Re: Mini Arduino
Enviado por: AcidDagger em 07 de Janeiro de 2011, 18:21
Acho que podes usar alguns componentes SMD que são faceis de soldar para poupar algum espaço (resistências e condensadores)  :)

Quanto a outra coisa acho que os females headers que tens ai não têm o mesmo espaçamento dos normais usados na placa arduino. (mas não tenho a certeza).

Cumprimentos  :)
Título: Re: Mini Arduino
Enviado por: XicoMBD em 07 de Janeiro de 2011, 18:30
A mim soldar smd's assusta-me um bocadinho e, por outro lado, quis alterar o menos possivel o esquema original. Mas é uma ideia a ter em conta.


Sim, não têm o mesmo espaçamento nem a mesma disposição, a ideia é a placa ser o mais simples possivel para ser "single sided" e para funcionar bem em breadboards. A maioria estão dispostos tal como no microcontrolador.
Título: Re: Mini Arduino
Enviado por: CBX em 07 de Janeiro de 2011, 18:37
as headers estão bem, mas há ai traços, esses mais finos, que para DIY são complicados de fazer, pelo menos os que passam entre os furos.

aconselhava-te a usar jumpers e um plano de GND

outra coisa: se isso é para usar numa breadboard aconselhava o mínimo de "tralha" possível e um tamanho mais reduzido.

edit: os componentes SMD soldam-se bem pelo menos até ao tamanho 0805, há  tutoriais no youtube bastante bons.

Título: Re: Mini Arduino
Enviado por: amando96 em 07 de Janeiro de 2011, 18:39
Fiquei impressionado com a facilidade que se solda SMDs, basta adicionares uma pinça às ferramentas para fazeres isso facilmente, até chips em SOIC se soldam muito facilmente, a sparkfun tem uma espécie de tutorial sobre isso.

Ainda fiquei de comprar uma caixa de resistências e condensadores no ebay...

PS: Acho que basta teres traços à volta de 0.4mm de grossura para passar um ampere de corrente através de cobre com altura padrão.

E ya, traços finos com pouca prática são difíceis, mas cheguei a fazer de 0.2mm com o método de toner :)
Título: Re: Mini Arduino
Enviado por: CBX em 07 de Janeiro de 2011, 18:47
0.2  :o

deixo aqui um simples que eu fiz à um tempo, nunca o cheguei a testar:

(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=974)
Título: Re: Mini Arduino
Enviado por: XicoMBD em 07 de Janeiro de 2011, 18:53
O plano de GND é a próxima alteração que quero fazer, os jumpers ainda tenho de ver.

De que tralha estás a falar? Da parte que regula o que vem da bateria? Eu disso não queria muito precindir nesta, mas sou capaz de fazer outra versão sem ela só com os leds, o botão reset e os pins para ligar o cabo ftdi.

A placa está com 8.1 cm por 2.25 cm mas se ficar como na imagem a parte que fica na breadboard já tem só 1.8 cm de largura, acho que não é mau...
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=976)
EDIT:
Já agora, podes-me dizer quanto puseste de espaçamento entre o plano e as pistas?
Título: Re: Mini Arduino
Enviado por: CBX em 07 de Janeiro de 2011, 19:29
0.6mm

sim refiro-me a essa parte, se isso é apenas para usar na breadboard fica mais prático uma fonte de alimentação à parte, que dá sempre para utilizar noutros projectos
Título: Re: Mini Arduino
Enviado por: senso em 07 de Janeiro de 2011, 23:51
Numa breadboard mete-se o chip directo...
Título: Re: Mini Arduino
Enviado por: XicoMBD em 18 de Janeiro de 2011, 17:31
Depois de mais algumas alteraçoes ficou assim:
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=998)
PS: A definição da imagem não está grande coisa, mas o plano do GND tem 0.5 de espaçamento, se quiserem ver com mais detalhe têm os ficheiros do eagle em anexo.
Título: Re: Mini Arduino
Enviado por: CBX em 18 de Janeiro de 2011, 19:01
à primeira vista tens ai umas pequenas falhas no plano de GND:

width\isolate: mete ai um valor maior que 0.4 se fores fazer a placa com o método térmico para evitar que alguma pista fique colada ao GND

sem valor no isolate:
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=1000)

com 0.4mm:
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=1002)


ON: se esta opção não estiver seleccionada o plano que vez é apenas de referência interna para o programa, não é um plano "real".

OFF:
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=1004)

ON:
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=1005)


spacing: este valor corresponde às partes do plano que ficam isoladas dos outros pontos de GND, quanto maior for menos pontos ficam na pcb:

spacing 1.27:
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=1007)

spacing 6.45:
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=1009)

estes valores variam de pcb para pcb, é uma questão de ir experimentando...

a pista que passa entre os furos da header não sei se a vais conseguir fazer, aconselho a usar um jumper:

(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=1011)

acho que não disse nenhuma barbaridade  ;D corrijam-me se estiver errado
Título: Re: Mini Arduino
Enviado por: CBX em 18 de Janeiro de 2011, 19:07
(post para os anexos)
Título: Re: Mini Arduino
Enviado por: XicoMBD em 18 de Janeiro de 2011, 20:22
Muito obrigado pela ajuda! :)
Mas ainda estou muito "verde" nisto...


Eu estava convencido de que tinha posto os 0.5 no isolate dai ter dito que tinham 0.5 de espaçamento  :-[


Mas não percebo porque é que se tem de por como dizes aqui:
Citar
ON: se esta opção não estiver seleccionada o plano que vez é apenas de referência interna para o programa, não é um plano "real".
As ligações não ficam melhor quando não se usam thermals (quando está OFF)?


EDIT:
Outra coisa, há maneira de diminuir o espaço entre o fim do plano e a borda da placa?
Título: Re: Mini Arduino
Enviado por: CBX em 18 de Janeiro de 2011, 20:32
tens uma opção para os tirar
Título: Re: Mini Arduino
Enviado por: XicoMBD em 18 de Janeiro de 2011, 22:08
Acho que agora já está mais razoável:
(https://lusorobotica.com/index.php?action=dlattach;topic=3159.0;attach=1018)
O "isolate" pus igual a 0.6 mm, o "spacing" igual a 6.45mm, fiz os "Orphans" desaparecerem, mantive o plano sem os "thermals", reorganizei alguns componentes e coloquei um jumper em vez daquelas pistas to das apertadas. Agora as pistas mais finas têm 0.75mm de largura (Nesta imagem ainda há uma de 0.5mm, mas no ficheiro já a alterei para 1mm).

O que achas?
Título: Re: Mini Arduino
Enviado por: CBX em 18 de Janeiro de 2011, 22:20
vais usar resistências de 1\8W? é parece-me pequeno o espaço que elas ocupam...

de resto parece-me bem  8)
Título: Re: Mini Arduino
Enviado por: XicoMBD em 18 de Janeiro de 2011, 22:26
Não sei, mas estou a pensar usar as de 1/4W.
Eu nas resistências não mechi, mantive as originais do boarduino:
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Ft1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcQHFJvGDBP464FzhG7tXMkwsLr6AM5fYCSVXlSw6GTi0NNO-OiOHw&hash=97475804878ad7df804089f8b0df41e2cd40e836)
Pelo que vejo na imagem acho que devem ficar inclinadas a aproximadamente 45 graus.


Olha, mas não percebi, aquela cena dos thermals dá algum problema se ficar assim?
Título: Re: Mini Arduino
Enviado por: amando96 em 19 de Janeiro de 2011, 00:06
Tens de ficar mais tempo com o ferro porque tem de aquecer mais área de cobre, podes estragar componentes mais sensíveis.