Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Painel solar Sun Tracker - Carregador do telefone

Componentes e suprimentos

Arduino UNO
× 1
Servos (Tower Pro MG996R)
Servo de 9 gramas que não precisa de alimentação externa
× 1
Resistor de foto
× 2
Resistor 10k ohm
× 2
Conversor boost de 2,5 V para 5 V - Adaptado por USB
× 1
Painel solar - Tamanho do passatempo
Qualquer painel pequeno serve, quanto maior a saída, melhor, mas mantenha-o pequeno e leve
× 2

Ferramentas e máquinas necessárias

Ferro de soldar (genérico)

Aplicativos e serviços online

Arduino IDE

Sobre este projeto


Going Green

Eu tenho trabalhado na indústria de energia renovável na Austrália e mexido com Arduinos há algum tempo, mas foi só neste projeto que eu finalmente decidi combinar os dois e construir meu próprio pequeno dispositivo solar. Uma pequena observação inicial, este projeto obviamente requer 5V para alimentar o Arduino e o servo, que são usados ​​para maximizar a produção de painéis solares que, na melhor das hipóteses, produzem 3,4V. Portanto, não está exatamente compensando. No entanto, o conceito é escalável, então se, por exemplo, você usou este conceito em uma matriz de 8 painéis, produzindo 12V, então você poderia alimentar o arduino e carregar seu telefone sem uma fonte de alimentação externa. Pretendo fazer isso um dia e adicionarei um link aqui quando acontecer.

Enquanto estou aqui, é melhor dar crédito às minhas fontes ...

The DIY Life - http://www.the-diy-life.com/arduino-solar-tracker/

Dispositivos Brown Dog - http://www.instructables.com/id/Solar-Altoids-USB-Charger/

Ambos são boas fontes de informação sobre o assunto e de onde obtive o conceito.

COMEÇANDO

Então, primeiro as coisas primeiro, você precisa de alguns painéis solares. Eu usei dois, embora você possa usar quantos quiser, apenas pense em quanto um servo de 9 gramas será capaz de levantar / abaixar (não o torne muito pesado). Os painéis que encontrei eram classificados em 1,5 V, 0,75 W de saída, que é o menor nível disponível atualmente. Mas eles eram leves e baratos e como isso é uma prova de projeto para mim, o resultado não é muito importante.

Juntei meus dois painéis ao longo da borda com epóxi. Para conectar os painéis em uma corda, basta soldar o fio positivo de um painel ao negativo do outro, o que deve deixar você com um fio positivo e um fio negativo sobrando. Conecte seus dois LDRs em cada lado do painel solar (leste e oeste) e solde uma extremidade de um fio de ponte em cada um de seus terminais. É mais fácil soldar um fio de ponte se você cortar a extremidade de um lado e descascar o cabo cerca de 5 mm para expor os fios .

Para que o Arduino leia os LDRs, precisamos de um circuito divisor de tensão para cada um. Veja aqui os divisores de tensão. Neste circuito, o LDR é R1, e usamos um resistor de 10kohm para R2 e unimos os fios do jumper ao arduino onde os dois resistores se encontram. Se você está construindo este projeto em uma placa de ensaio, um cabo LDR irá para o divisor de tensão, o outro irá para o barramento de alimentação positivo. Veja o diagrama de Fritzing abaixo.

A Estrutura do Rastreador

A próxima coisa que você precisa construir é uma estrutura de suporte giratória para o painel sentar. Meu projeto é basicamente um comprimento de aço de mola suportado por duas armações A. A parte inferior do conjunto de painéis tem pequenos suportes de madeira, com orifícios para o aço da mola. Fiz tudo com madeira de balsa para mantê-lo barato, fácil e leve, mas se fosse um acessório permanente, você iria querer de aço fino ou madeira tratada. Não documentei muito bem a construção do suporte giratório, mas o vídeo abaixo deve mostrar como é feito, bem como a localização do servo. Construí o meu com o painel voltado para baixo, para poder ficar de frente para a base da estrutura para o norte, portanto, seja qual for a direção em que o painel oscila ao rastrear o sol, ele sempre será inclinado um pouco para o norte para maximizar a saída. (Estou no hemisfério sul)

Montagem do Servo

O Servo fica em uma das vigas de suporte da estrutura do quadro A e levanta / abaixa um lado do painel. Dobrei um pouco de aço de mola com um alicate para obter pontas em gancho, você pode passá-lo através do suporte do painel e braço do servo, você pode ter que alargar os orifícios no braço do servo para caber no aço, usei a menor broca que consegui encontrar. Não cole o aço no braço do servo ou no suporte do painel, pois ele deve ser capaz de girar dentro dos orifícios para que o painel se levante suavemente. Uma vez no lugar, retire o painel da estrutura, de forma que apenas o servo permaneça para que você possa fazer alguma calibração.

Calibrando o Servo

Abra um novo esboço e insira o código a seguir.
  #include  Servo myservo1; // Cria um objeto servo para controlar o servoint pos =10; void setup () {myservo1.attach (9); // anexa o objeto servo ao pino 9 do PWM} void loop () {myservo1.write (pos);}  

Faça upload para o seu arduino e veja para onde o servo se move. Continue alterando o valor 'pos' entre 0 e 180 no esboço e recarregue o esboço, até encontrar as posições onde o braço do servo aponta diretamente para cima e para baixo. Esses são seus valores máximo e mínimo. Para mim, era 15 e 140. Se o valor de alguma forma se sobrepor de 180 a 0, retire o braço do servo e reposicione-o para que possa ser alinhado corretamente.

Colocando em juntos

Vá em frente e conecte tudo e insira o seguinte esboço.
  // Sun Tracker Sketch //// Este esboço é projetado para uso com um servo de 9 gramas, capaz // de ser alimentado diretamente do Arduinio sem uma // fonte de alimentação externa. Para o diagrama fritzing, consulte o repositório Github //https://github.com/nickalanf/Arduino--Projects// A seção do monitor serial é para fins de depuração, ou para interesse geral, // uma vez que o dispositivo está funcionando corretamente, pode ser diasabled //// Sketch by FIELDING - 8/2/18 # include  Servo servo; // Cria um objeto servo para controlar o servoint eLDRPin =A0; // Atribuir pinos ao LDR'sint wLDRPin =A1; int eastLDR =0; // Cria variáveis ​​para armazenar em LDR readingsint westLDR =0; int diferença =0; // Cria uma variável para comparar os dois LDR'sint error =10; // Variável para se há uma diferença perceptível entre o servoSet =130; // Variável para posição do servo - será diferente para cada devicevoid setup () {servo.attach (9); // anexa o objeto servo ao pino 9 do PWM Serial.begin (9600); } loop vazio () {eastLDR =analogRead (eLDRPin); // Lê os valores LDR westLDR =analogRead (wLDRPin); if (eastLDR <400 &&westLDR <400) {// Verifique se há pouca luz em ambos os LDRs while (servoSet <=140 &&> =15) {// em caso afirmativo, envie os painéis de volta para o leste para o servoSet do nascer do sol ++; servo.write (servoSet); atraso (100); }} diferença =eastLDR - westLDR; // Verifique a diferença if (diferença> 10) {// Envia o painel para o LDR com uma leitura superior if (servoSet <=140) {servoSet ++; servo.write (servoSet); }} else if (diferença <-10) {if (servoSet> =15) {servoSet -; servo.write (servoSet); }} Serial.print (eastLDR); // O monitor serial pode ser útil para depurar / configurar Serial.print ("-"); // Use-o para ver se seus LDRs são visivelmente diferentes quando Serial.print (westLDR); // Eles têm luz igual brilhando sobre eles, se assim for, corrija com o valor de erro Serial.print ("-"); Serial.print (diferença); Serial.print ("-"); Serial.print (servoSet); // Ajuste as configurações do servo, para maximizar o swing disponível Serial.print ("-"); Serial.println ("."); atraso (100);}  

Abra o monitor serial e ilumine os LDRs. Tente brilhar uniformemente em ambos e verifique se o valor da diferença está sendo impresso no monitor serial. Se for maior que cerca de 25 ou menor que -25, você precisa adicionar uma calibração de erro. Adicione o valor de erro relevante ao código e, em seguida, adicione ou subtraia esse valor do LDR relevante. Se os valores de diferença forem próximos, não haverá problema em deixar como está.

Você está pronto para fazer um teste! o mais fácil é entrar em uma sala escura e com uma tocha / lâmpada. balance a luz de um LDR lentamente para o outro e observe o movimento do painel. Você também pode encobrir um LDR e o painel deve balançar para longe daquele.

BÔNUS- CARREGADOR DE TELEFONE

Se você quiser realmente usar a saída dos painéis, pode conectar um conversor boost de 2,5 V-5 V CC-CC diretamente aos fios que saem dos painéis. É um circuito totalmente separado do arduino / placa de ensaio. Observe que um telefone padrão carrega a 5 V, e seus painéis podem estar emitindo 5 V, mas com baixa corrente, então, se a bateria estiver cheia ou a luz do sol baixa, você não terá saída suficiente para carregar. A maneira mais fácil de contornar isso é simplesmente adicionar mais painéis!


Código

  • Sun Tracker
Sun Tracker Processando
 // Sun Tracker Sketch //// Este esboço é projetado para uso com um servo de 9 gramas, capaz // de ser alimentado diretamente do Arduinio sem uma // fonte de alimentação externa. Para o diagrama fritzing, consulte o repositório Github //https://github.com/nickalanf/Arduino--Projects// A seção do monitor serial é para fins de depuração, ou para interesse geral, // uma vez que o dispositivo está funcionando corretamente, pode ser diasabled //// Sketch by FIELDING - 8/2/18 # include  Servo servo; // Cria um objeto servo para controlar o servoint eLDRPin =A0; // Atribuir pinos ao LDR'sint wLDRPin =A1; int eastLDR =0; // Cria variáveis ​​para armazenar em LDR readingsint westLDR =0; int diferença =0; // Cria uma variável para comparar os dois LDR'sint error =10; // Variável para se há uma diferença perceptível entre o servoSet =130; // Variável para posição do servo - será diferente para cada devicevoid setup () {servo.attach (9); // anexa o objeto servo ao pino 9 do PWM Serial.begin (9600); } loop vazio () {eastLDR =analogRead (eLDRPin); // Lê os valores LDR westLDR =analogRead (wLDRPin); if (eastLDR <400 &&westLDR <400) {// Verifique se há pouca luz em ambos os LDRs while (servoSet <=140 &&> =15) {// em caso afirmativo, envie os painéis de volta para o leste para o servoSet do nascer do sol ++; servo.write (servoSet); atraso (100); }} diferença =eastLDR - westLDR; // Verifique a diferença if (diferença> 10) {// Envia o painel para o LDR com uma leitura superior if (servoSet <=140) {servoSet ++; servo.write (servoSet); }} else if (diferença <-10) {if (servoSet> =15) {servoSet -; servo.write (servoSet); }} Serial.print (eastLDR); // O monitor serial pode ser útil para depurar / configurar Serial.print ("-"); // Use-o para ver se seus LDRs são visivelmente diferentes quando Serial.print (westLDR); // Eles têm luz igual brilhando sobre eles, em caso afirmativo, corrija com o valor de erro Serial.print ("-"); Serial.print (diferença); Serial.print ("-"); Serial.print (servoSet); // Ajuste as configurações do servo, para maximizar o swing disponível Serial.print ("-"); Serial.println ("."); atraso (100);} 

Esquemas


Processo de manufatura

  1. Célula solar
  2. Aquisição de dados em tempo real do painel solar usando Arduino
  3. Solar Tracker V2.0
  4. Rastreador solar baseado na Internet das coisas (IoT)
  5. Sistema solar de rastreamento do sol
  6. SmartPostBox
  7. Plataforma de painel solar de rastreamento de luz servo-controlada
  8. Painel de rastreamento solar de eixo duplo com modo automático e manual
  9. Painel solar:questões de qualidade e pontos-chave de controle
  10. Processo de fabricação do painel solar:como é feito o painel solar?