thegoodfellas/blogset-br huggingface dataset:
RobitFaz tempo que nao posto nada aqui, mas nao parei de trabalhar nos meus projetos. A ideia sempre foi fazer robos de baixo custo e "made in home", comprar um kit pronto eu nem levo em consideracao. E aos poucos estou fazendo alguns progressos. Esse robozinho da foto comecou com o projeto que descrevi em Tutorial: Robo simples com sucata. E como o nome diz, era bem simples. Os pulsos para os motores de passo eram gerados pelo computador atraves de timers e iam praticamente direto para os motores de passo pela porta paralela. Tudo bem simples, o maior desafio foi soldar o conector para o (pesadao) cabo paralelo com todos os seus 25 pinos um quase encostando no outro.Figura 2 - PicStamp da Grande Ideia Studio Mas depois ele evoluiu. Gracas ao Prof. Mario Guimaraes da Grande Ideia Studio que gentilmente forneceu um PicStamp 1 (figura 2) para algumas experiencias. O PicStamp e uma plaquinha com um conector USB e um microcontrolador PIC 18F2550 ja com o cristal e todos os componentes necessarios que um microcontrolador exige. Dois arrays de pinos na parte de baixo da placa facilitam muito a instalacao (e remocao) do PIC no dispositivo que sera controlado. E um microcontrolador extremamente poderoso e cheio de recursos. Com essa plaquinha meu robozito deu adeus a porta paralela e passou a usar a porta USB. Muito mais rapida, com um cabo muito mais fino e mais leve (figura 3).Figura 3 - Robo usando o PicStamp para comunicacao via USBMas um cabo mais fino e mais leve, continua sendo um cabo. E um cabo amarra o robo ao computador, ele nao fica livre pra explorar o mundo com suas proprias rodas. Entao continuei procurando opcoes, de baixo custo, evidentemente. E ai topei com o Wixel (figura 3). Do mesmo modo que o PicStamp, o Wixel tambem tem um microcontrolador em uma plaquinha, ja com o cristal e os arrays de pinos na parte de baixo. Mas com uma diferenca fundamental, ele e tambem um transceptor (transmissor e receptor) de RF. Um par de wixels permite estabelecer uma comunicacao direta sem fio entre os dois. Com mais de dois e possivel fazer uma rede. O microcontrolador embutido nele tambem nao e pouca coisa, roda a 24Mhz, oferece 29k de memoria flash disponivel para o programa (de um total de 32k) e (quase) 4k de memoria RAM, alem de dispor de 15 pinos de IO (6 podem ser configurados para entrada analogica) e de quebra oferece 4 timers, sendo um de 16 bits e tres de 8 bits. Da pra brincar bastante com ele.Figura 3 - WixelOk, tudo isso e muito bom, mas e o custo? Afinal o proposito deste projeto e fazer robos de baixo custo. Em uma palavra: barato. Uma plaquinha ja pronta custa US$ 20,95, o que da uns 42 reais. Um joguinho com dois wixels e o cabo USB sai por US$ 41,95. Ponha mais US$ 11,00 pelo envio e com pouco mais de 100 reais vc tem o conjunto. Muito mais barato que as outras opcoes de wireless
como o Zig-Bee ou o Bluetooth. E fica melhor quando a gente considera que alem de transceptor ele tem tambem um microcontrolador programavel. O problema do wixel e que o alcance nao e grande coisa. Em situacoes ideais (e os astros favoraveis e ventos a favor), chega a 15 metros, mas situacoes ideais sao ideais porque nao sao reais, entao na pratica nao espere mais do uns 10 metros. Mesmo assim, 10 metros e bem melhor do que 1,80m do cabo USB.Pra quem se interessar em obter um par, uma dica importante: se nao quiser ser extorquido pelo governo, de maneira nenhuma use o Fedex pra importar o Wixel. Cai nessa besteira uma vez. Chegou em 3 dias, rapidinho, mas ai tive que desenbolsar R$ 111,00 de IMPOSTO pelo conjunto que me custou R$ 85,00, o imposto e mais caro que o produto... So no Brasil mesmo. Se optar pelo correio e o total da compra nao ultrapassar US$ 50,00, ai demora pra chegar, mas nao tem imposto. E pra aproveitar o envio sem passar dos 50 dolares, sugiro encomendar na mesma compra um ou dois pacotinhos de jumpers macho-macho. Sao muito uteis pra testar o wixel em uma proto-board, ou vc pode usar em uma plaquinha propria para o wixel como essa que eu fiz ai na foto abaixo.Figura 5 - Placa de teste caseira para o Wixel
Ultimamente ando fazendo algumas experiencias com bobinas e eletro-imas, se tudo der certo depois eu posto o projeto aqui. E fazendo essas experiencias, descobri como e dificil achar bobinas e eletro-imas nas medidas que o projeto precisa. Depois de nao achar nada aproveitavel na sucata e nem achar pra comprar nas lojas de eletronica, decidi que o jeito e fazer eu mesmo, afinal teoricamente um eletro-ima e so um fio enrolado em uma barra de ferro doce, nao e? O que pode ser mais simples que isso?Se perguntar pro tio Google como se faz um eletro-ima, ele vai dizer que e simples e facil e vai indicar dezenas de paginas ensinando a enrolar um fio eletrico em um prego enorme, ligar duas pilhas nele e entao, voila!!! Voce agora tem um eletro-ima capaz de segurar um ou dois clipes de papel! Viu como e facil? O unico problema e que isso nao adianta nada pro meu projeto. Nao quero por pregos de construcao no meu projeto e quero um eletro-ima capaz de segurar um pouco mais do que um par de clipes. Entao como fazer?O nucleoTeoricamente voce pode construir um eletro-ima sem nucleo, ou melhor, com nucleo de ar. Mas na pratica isso nao e nem um pouco pratico. Um nucleo metalico faz uma diferenca tao brutal no desempenho de um eletro-ima que voce nao vai querer abrir mao dele.FerriteClaro que a melhor opcao para o nucleo e o ferrite, afinal ele e feito para isso e e uma liga com um custo muito baixo. Dificil e achar pra vender barras ou carreteis de ferrite nas medidas necessarias. Nem perca seu tempo procurando em lojas de eletronica. Se resolver usar ferrite, va direto para o Google. Tem diversos fabricantes no Brasil, dificil e achar um que venda em pequenas quantidades, normalmente os fabricantes de ferrite fornecem para empresas, nao para clientes finais.Parafusos com porcasEssa e uma opcao bastante pratica e barata. Parafusos de diversos comprimentos e diametros sao facilmente encontrados e lojas de ferramentas e em sucatas. Alem disso, um eletro-ima feito com um parafuso e facilmente fixado em sua posicao final, afinal, e pra isso que serve um parafuso, nao e? Arruelas pode ser usadas para limitar o enrolamento criando uma especie de carretel com o parafuso.Extremamente importante: Parafusos nao sao feitos sempre de ferro ou de material ferromagnetico e isso e essencial para o nucleo de um eletro-ima. Quando for escolher um parafuso para o seu projeto, tenha um pequeno ima a mao para testar se o parafuso e de material ferromagnetico. Quanto maior for a atracao entre o ima e o parafuso, melhor. Uma atracao fraca significa que e feito de uma liga com pouco metal ferromagnetico, nesse caso vai ser pouco eficiente. Se o parafuso nao for atraido pelo ima, esqueca, ele nao serve como nucleo.Parafusos para encadernacaoEsta foi a minha escolha para o projeto em andamento por aqui. Na verdade nao sei o nome dessas coisinhas, mas sao usadas para encadernacao e sao facilmente encontradas em papelarias por um preco bem baixo. O diametro e fixo, 5mm,
mas o comprimento varia desde 5mm ate 150mm ou mais. O diferencial destes parafusos com certeza e a estetica, nesse quesito e imbativel. Mas aqui vale tambem o mesmo aviso do item anterior sobre material: pode ser que o material nao seja ferromagnetico e isso precisa ser testado antes de sair comprando, leve um ima.PregosBem, nao tem muito o que dizer, desde que sejam de ferro, eles funcionam como nucleo. A estetica nao e grande cois e deixa o projeto com cara de feira de ciencias. E a nao ser que ele seja martelado, nao e muito facil fixar o eletro-ima em sua posicao final, ja que prego nao tem rosca, mas tambem e uma opcao.O enrolamentoUma vez escolhido o nucleo, o que falta e enrolar o fio e ai aparecem algumas questoes. Que tipo de fio usar? Quantas voltas? E melhor usar fio mais fino ou fio mais grosso?Tipo do fioEm primeiro lugar esqueca os fios com isolamento plastico. O isolamento plastico e grosso demais, faz com que as espiras fiquem muito separadas e isso definitivamente compromete o resultado. O fio proprio para isso e o fio esmaltado usado no enrolamento de transformadores e motores eletricos. O esmalte proporciona um isolamento adequado e nao aumenta significativamente o diametro do fio. Quanto mais proximas ficarem as espiras umas das outras, melhor.Diametro do fioQuanto menor for o diametro do fio, mais proximas ficarao as espiras e isso e bom. Maior vai ser a resistencia do fio e isso e ruim. Alem disso e preciso considerar quanto de corrente se pretende aplicar a bobina, fios muito finos nao suportam correntes altas. Finalmente tem tambem o aspecto pratico, se voce pretende enrolar a bobina de forma caseira, o fio tem que ter diametro suficiente para ser manipulado sem quebrar.Onde obter fio esmaltadoA solucao obvia e retirar de transformadores e motores sucateados, isso pode dar certo, mas e preciso atentar para alguns detalhes. O esmalte dos fios tende a ficar quebradico com o tempo e com o calor. Se o transformador ou motor costumava esquentar quando estava em uso, provavelmente o esmalte do enrolamento ficou quebradico e vai ser dificil desenrolar sem perder o isolamento.A melhor opcao e comprar o fio novo, nao e caro, so e dificil de achar. Lojas de eletronica dificilmente vendem esse tipo de fio, mas podem ser encontrados em estabelecimentos que vendem artigos para motores eletricos industriais.Quantas voltasComo regra geral, quanto mais voltas melhor. Mas tem algumas coisas a considerar. Nao adianta muito espalhar essas voltas por um comprimento muito longo, o ganho na potencia do eletro-ima vai ser pouco, melhor fazer uma bobina mais curta e com varias camadas de espiras. Tambem tem que ser levado em conta que quanto mais voltas, maior vai ser o comprimento do fio e isso aumenta a resistencia. Outro detalhe e que quanto mais externa e a camada de espiras, menos eficiente ela e. As espiras mais proximas do nucleo influem muito mais na intensidade do campo magnetico final do que as espiras mais afastadas, entao a partir de certo ponto acrescentar mais camadas
nao compensa por conta do aumento na resistencia. E finalmente, todo material ferromagnetico tem um limite de magnetizacao. Depois de atingido esse limite nao adianta acrescentar mais corrente ou mais espiras.
Vou tentar sugerir aqui um roteiro inicial de estudo para a criacao/projeto de um robo proprio.1) PortasE uma boa ideia ter como recurso um computador controlando ou pelo menos se comunicando com o robo. Computadores se comunicam e/ou controlam outras coisas atraves de suas portas. LPT, COM, USB, miniDIN, PS e por ai vai, tem uma infinidade de siglas para designar todas as portas que um computador suportou ou suporta atualmente. Em teoria, qualquer porta poderia ser usada, ja que todas tem alguma capacidade de comunicacao, mas na pratica, algumas sao mais praticas do que outras. A LPT (vulga porta paralela) que era usada com as impressoras mais antigas seria um bom inicio por ser extremamente simples de usar e com recursos suficientes para controlar um robo bastante aceitavel. Mas infelizmente e especime em extincao, esta cada vez mais dificil encontrar computadores que ainda tenham uma porta LPT, entao investir em porta paralela talvez nao seja uma boa opcao.A bola da vez atualmente e a porta USB. Altas taxas de transmissao e aumentando, capacidade de enderecamento, alimentacao eletrica de pequenos dispositivos, plug-and-play, entre outras bem-feitorias, fizeram da porta USB a escolha preferida de quase todos os fabricantes de perifericos para computadores.O dominio da porta USB em toda sua potencialidade nao e tao simples e trivial, mas pode ser alcancado. Enquanto isso, existem (e sao largamente usados na robotica) simuladores de porta COM para portas USB. Dessa forma, um programa "enxerga" a porta USB como se fosse uma porta COM e pode ler e enviar bytes pela porta usando comandos e bibliotecas para porta COM. Isso simplifica muito o uso da porta USB, embora com o custo de perder acesso a algumas de suas habilidades.Entao o primeiro desafio do neofito aspirante a robot maker e aprender a usar alguma porta do computador.2) MotoresPara este contexto, robos precisam ser capazes de algum tipo de movimento e para isso usam atuadores. Atuadores podem ser de diversos tipos, cores e sabores, mas o atuador que nos interessa no momento e o motor eletrico. Existem muitos tipos de motores, assim como existem muitos tipos de robos. Mas para fazer um robo de pequeno-medio porte, capaz de se mover usando rodas ou esteiras, o mais indicado sao dois tipos de motores: motores DC e motores de passo.Os motores DC sao muito populares porque sao mais baratos, podem ser menores e consomem menos energia que os motores de passo. A grande maioria dos kits vendidos no mercado usa motores DC. Mas eles tem alguns problemas. O primeiro e que eles conseguem RPM's altos, mas tem pouco torque, entao e necessario acoplar uma caixa de reducao com engrenagens para diminuir a rotacao e aumentar o torque. Nao tem como fazer um controle de posicao com motores DC, por isso todo robo que usa motores DC tambem precisa de encoders monitorando a quantidade de rotacoes das rodas. Finalmente o controle de velocidade nao e muito simples, ou melhor, um bom controle de velocidade nao e simples. A velocidade de um motor DC e diretamente proporcional a voltagem fornecida, quanto maior a
voltagem, mais rapido ele gira. Entao e possivel controlar a velocidade apenas atraves de resistores ou um potenciometro, mas essa tecnica, apesar de simples, desperdica muita energia nas resistencias e ai o motor DC perde sua principal vantagem em relacao ao motor de passo. A maneira indicada de controlar a velocidade de motores DC e atraves da tecnica de PWM. Em vez de a alimentacao ser continua, o motor e alimentado em pulsos sendo ligado e desligado bem rapidamente muitas vezes por segundo. A cada pulso o motor fica ligado por um tempo e desligado em seguida. Controlando o tempo que ele fica ligado e desligado e possivel controlar a velocidade do motor. Por exemplo se for usado um pulso onde o tempo ligado e igual ao tempo desligado, o motor vai girar na metade da velocidade que atingiria se ficasse com a alimentacao continua e, mais importante, vai consumir a metade da energia . Essa tecnica, em vez de desperdicar energia com resistencias, economiza energia ja que o motor nao fica ligado o tempo todo.Ja os motores de passo sao maiores, mais pesados e mais gulosos do que motores DC com torque equivalente. Mas no quesito precisao sao imbativeis. E possivel ter completo controle do giro do motor e sem precisar de sensores como encoders nas rodas. Na minha opiniao, e a melhor escolha para um programador iniciar na robotica. Alem da precisao no posicionamento, e essencialmente um dispositivo digital, pode ser facilmente conectado e controlado por um computador, sem ser necessario nenhum procedimento ou hardwaremuito complexo. Alguma informacao extra sobre motores de passo pode ser encontrada aqui.De inicio e extremamente importante saber a diferenca entre motores de passo unipolares e bipolares, entao aconselho aprender um pouco sobre o assunto antes de sair comprando motores de passo.Dois motores de passo e um motor DC extraidos de uma impressora sucateada.Motores de passo sao facilmente encontrados em impressoras sucateadas. A maioria das impressoras tem internamente tres motores, sendo dois de passo e um DC (corrente continua). E facil reconhecer o tipo do motor pela quantidade de fios que saem dele. Motores DC tem so dois fios. Motores com 4 fios, sao motores de passo bipolares. Motores com 5 fios sao unipolares. O premio e encontrar na impressora um motor com 6 fios. Este tanto pode ser usado como bipolar ou unipolar, dependendo de como os fios sao conectados. Se conseguir motores em impressoras velhas, ai nao tem muito o que escolher, mas se decidir comprar um motor de passo, a melhor opcao e um motor com 6 fios. Qual a vantagem? No inicio de seus estudos, voce pode ligar esse motor como unipolar e assim usar um circuito de controle muito mais simples, facil e barato. Mais tarde, quando tiver um pouco mais de experiencia e achar que a vida esta facil demais, voce pode incrementar o robo e colocar um circuito de controle bipolar. Isso vai dar mais torque para os motores e vai exigir menos da bateria, mais forca com menos energia e um bom up-grade. E sem ter que trocar
de motor.Outro motivo que torna o estudo de motores importante nesta fase inicial e que na pratica, a escolha do motor influi em quase todo o projeto do robo. A bateria precisa ser dimensionada em funcao dos motores. O conjunto motores-bateria e o que mais influi no projeto do chassis do robo, afinal sao os componentes maiores e mais pesados. E cada tipo de motor precisa de uma eletronica diferente. As placas que controlam ou dao potencia aos motores precisam ser compativeis com o tipo do motor. Alem disso, tambem tem o software que vai gerar os sinais para controlar os motores, cada tipo de motor exige um algoritmo diferente.Entao motores sao a escolha mais critica no projeto de um robo, e uma boa ideia dedicar bastante atencao a esse assunto.VoltagemSobre a voltagem dos motores, motores de 12 volts sao bastante comuns, especialmente quando retirados de impressoras sucateadas. Mas existem motores de passo em diversas voltagens, desde 2,7 volts, ate motores de 24 volts ou mais e isso nao esta diretamente relacionado com a capacidade de torque do motor. Um motor de 2,7 volts pode ter muito mais torque (e um consumo de corrente muito maior) que um motor de 12 volts. Entao pelo criterio do torque e do consumo, a voltagem de operacao do motor nao faz muita diferenca. Mas a voltagem faz toda a diferenca na escolha das baterias. Os motores no final terao que ser alimentados por baterias e tambem terao que carregar o peso da bateria. Baterias de 12 volts com uma capacidade de fornecimento de corrente aceitavel (3000 mAh ou mais) podem ser grandes e pesadas, tanto que podem chegar a inviabilizar alguns motores menos potentes, forcando a escolher motores maiores, o que vai exigir mais da bateria. Mas atualmente existem opcoes de baterias leves e potentes.Sobre isso tem mais um ponto a considerar. Motores de passo sao ativados mais pela corrente do que pela voltagem. Na verdade nao faz muita diferenca quantos volts voce fornece ao motor, desde que ele receba sua cota de corrente. A voltagem nominal de um motor de passo apenas indica a voltagem necessaria para atingir a corrente que ele drena, considerando a resistencia das bobinas internas.3) BateriasComo citado, a escolha das baterias depende essencialmente dos motores, eles e que vao exigir mais da bateria. Motores de passo de 12 volts sao bastante comuns, entao 12 volts e um bom palpite inicial para a escolha das baterias. Mas alem da voltagem, uma questao importante e a corrente (em miliAmperes/hora - mAh) que a bateria consegue fornecer. Independente da voltagem, quanto mais torque tiver um motor de passo, maior vai ser o consumo de corrente. Motores com torque suficiente para carregar o peso deles proprios, das baterias, do chassis e tudo o mais que for colocado nele, provavelmente vao gastar pelo menos 500 mAh cada um, entao seria uma boa ideia que a bateria tivesse uma capacidade de fornecimento de corrente de pelo menos 3000 mAh. Baterias de 12 volts com essa capacidade sao relativamente grandes e pesadas, mas existe a opcao de
combinar baterias com menor voltagem para conseguir a voltagem necessaria. Por exemplo, e possivel ligar em serie 10 pilhas AA recarregaveis e assim conseguir os 12 volts. Pilhas AA recarregaveis com ate 3600 mAh de corrente sao facilmente encontradas no mercado. Mas atualmente existem muitas outras opcoes.Sobre os tipos de baterias mais comuns disponiveis no mercado, veja este post. 4) Circuito de alimentacaoEsta e uma parte extremamente importante do robo. Conforme-se com o fato que o teu robo vai precisar de pelo menos duas voltagens diferentes e dependendo do caso pode chegar a tres. Os circuitos integrados geralmente funcionam com 5 volts, mas alguns (algumas versoes do arduino, por exemplo) funcionam com 3.3 volts. Ja para os motores, depende do motor, tem motores de todas as voltagens, mas e bom contar com menos 9 volts e melhor ainda 12 volts. Uma boa opcao de alimentacao e usar baterias capazes de fornecer a voltagem dos motores e usar reguladores de tensao para reduzir a voltagem para os 5 ou 3.3 volts exigidos pelos circuitos.Reguladores de tensao sao circuitos que na sua versao basica (e perfeitamente suficiente) sao extremamente simples de projetar e montar. Existem chips que fazem quase todo o trabalho, so precisando de mais dois ou tres componentes adicionais no circuito. Os dois chips mais populares para este trabalho sao o LM7805 e o LM317. Os dois sao baratos, faceis de usar e fornecem corrente suficiente para alimentar todos os circuitos do robo. Se voce nao tem muita experiencia com eletronica, projetar e montar teus proprios reguladores de tensao e um otimo exercicio inicial e vai te dar a experiencia necessaria para encarar circuitos mais complexos.Importante: O LM7805 pode fornecer ate 1A de corrente, o LM317 pode chegar a 1.5A. Isso e mais que o suficiente para alimentar todos os circuitos do robo, mas nao e suficiente para alimentar os motores. Existem chips capazes de fornecer mais corrente, mas com um projeto adequado, os motores podem ser alimentados diretamente pelas baterias, sem a necessidade de reguladores. Os reguladores citados acima sao apenas para alimentar os circuitos. Veja neste post um tutorial sobre o uso do 7805.5) Comunicacao USB / Wireless6) Microcontroladores7) Sensores8) Navegacao9) Captura de imagens