En este post iré colocando las fases de la construcción de un seguidor solar diseñado con Arduino, con el propósito de obtener el mayor provecho de la energía solar.
Lo primero que se hizo fue armar un circuito driver para el control de un motor paso a paso con Arduino.
La programación para mover el motor desde Arduino es la siguiente:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
<span style="color: #cc6600;">void</span> <span style="color: #cc6600;"><b>setup</b></span>(){ <span style="color: #cc6600;">pinMode</span>(8, <span style="color: #006699;">OUTPUT</span>); <span style="color: #cc6600;">pinMode</span>(9, <span style="color: #006699;">OUTPUT</span>); <span style="color: #cc6600;">pinMode</span>(10, <span style="color: #006699;">OUTPUT</span>); <span style="color: #cc6600;">pinMode</span>(11, <span style="color: #006699;">OUTPUT</span>); <span style="color: #cc6600;"><b>Serial</b></span>.<span style="color: #cc6600;">begin</span>(9600); } <span style="color: #cc6600;">void</span> <span style="color: #cc6600;"><b>loop</b></span>(){ <span style="color: #cc6600;">digitalWrite</span>(8, <span style="color: #006699;">HIGH</span>); <span style="color: #cc6600;">digitalWrite</span>(9, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(10, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(11, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">delay</span>(25); <span style="color: #cc6600;">digitalWrite</span>(8, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(9, <span style="color: #006699;">HIGH</span>); <span style="color: #cc6600;">digitalWrite</span>(10, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(11, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">delay</span>(25); <span style="color: #cc6600;">digitalWrite</span>(8, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(9, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(10, <span style="color: #006699;">HIGH</span>); <span style="color: #cc6600;">digitalWrite</span>(11, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">delay</span>(25); <span style="color: #cc6600;">digitalWrite</span>(8, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(9, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(10, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(11, <span style="color: #006699;">HIGH</span>); <span style="color: #cc6600;">delay</span>(25); } |
Esto va a provocar que Arduino se mueva en sentido anti horario. Para que se mueva en sentido horario, se deben hacer las siguientes modificaciones:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
<span style="color: #cc6600;">void</span> <span style="color: #cc6600;"><b>setup</b></span>(){ <span style="color: #cc6600;">pinMode</span>(8, <span style="color: #006699;">OUTPUT</span>); <span style="color: #cc6600;">pinMode</span>(9, <span style="color: #006699;">OUTPUT</span>); <span style="color: #cc6600;">pinMode</span>(10, <span style="color: #006699;">OUTPUT</span>); <span style="color: #cc6600;">pinMode</span>(11, <span style="color: #006699;">OUTPUT</span>); <span style="color: #cc6600;"><b>Serial</b></span>.<span style="color: #cc6600;">begin</span>(9600); } <span style="color: #cc6600;">void</span> <span style="color: #cc6600;"><b>loop</b></span>(){ <span style="color: #cc6600;">digitalWrite</span>(8, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(9, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(10, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(11, <span style="color: #006699;">HIGH</span>); <span style="color: #cc6600;">delay</span>(25); i++; <span style="color: #cc6600;">digitalWrite</span>(8, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(9, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(10, <span style="color: #006699;">HIGH</span>); <span style="color: #cc6600;">digitalWrite</span>(11, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">delay</span>(25); i++; <span style="color: #cc6600;">digitalWrite</span>(8, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(9, <span style="color: #006699;">HIGH</span>); <span style="color: #cc6600;">digitalWrite</span>(10, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(11, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">delay</span>(25); i++; <span style="color: #cc6600;">digitalWrite</span>(8, <span style="color: #006699;">HIGH</span>); <span style="color: #cc6600;">digitalWrite</span>(9, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(10, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">digitalWrite</span>(11, <span style="color: #006699;">LOW</span>); <span style="color: #cc6600;">delay</span>(25); } |
Se trata simplemente de cambiar la secuencia en la que se ejecuta el código para así variar la activación de las bobinas y cambiar el sentido de giro.
Ahora, utilizando el motor paso a paso conectado a Arduino, se ha diseñado la plataforma giratoria en donde se ha de colocar el panel solar. Arduino debe ser capaz de encontrar una referencia para el motor paso a paso, el llamado «cero grados», punto del cual partirán todos los movimientos del motor.
En los próximos días iré publicando poco a poco las fases del diseño de este proyecto.
Espero sus comentarios.
me puedes pasar los numero de las resistencias y todo eso
funciona a coca cola?