{"id":57,"date":"2025-09-30T10:53:24","date_gmt":"2025-09-30T13:53:24","guid":{"rendered":"http:\/\/educate.poa.ifrs.edu.br\/?page_id=57"},"modified":"2025-09-30T10:53:24","modified_gmt":"2025-09-30T13:53:24","slug":"janela-automatica-a","status":"publish","type":"page","link":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/janela-automatica-a\/","title":{"rendered":"Janela Autom\u00e1tica (A)"},"content":{"rendered":"\n<p><strong>Criando um ambiente inteligente que reage \u00e0 luz<\/strong>.<\/p>\n\n\n\n<p>Vamos construir um dispositivo que traz a automa\u00e7\u00e3o para dentro de casa! O desafio desta atividade \u00e9 projetar e construir uma janela inteligente que se abre automaticamente com a luz do dia e se fecha ao anoitecer. Utilizando um sensor de luz e um servo motor, cada equipe criar\u00e1 seu pr\u00f3prio mecanismo, explorando conceitos de mec\u00e2nica, eletr\u00f4nica e programa\u00e7\u00e3o para criar um sistema funcional e criativo que interage com o ambiente.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Roteiro para Professores (Foco no Aprofundamento T\u00e9cnico)<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Objetivo da Atividade:<\/strong> Implementar um sistema de controle de posi\u00e7\u00e3o utilizando um Servo Motor atuado pela leitura de um sensor de luminosidade (LDR), explorando a convers\u00e3o de dados anal\u00f3gicos de um sensor em movimento angular preciso de um atuador.<\/li>\n\n\n\n<li><strong>Conceitos Tecnol\u00f3gicos Fundamentais:<\/strong>\n<ul class=\"wp-block-list\">\n<li><strong>Sensor LDR (Resistor Dependente de Luz):<\/strong> Componente anal\u00f3gico cuja resist\u00eancia varia com a intensidade da luz, fornecendo uma leitura cont\u00ednua (0-1023) em um pino anal\u00f3gico.<\/li>\n\n\n\n<li><strong>Servo Motor:<\/strong> Atuador que permite o controle preciso de um eixo para um \u00e2ngulo espec\u00edfico (geralmente 0-180 graus), ideal para movimentos de abrir\/fechar.<\/li>\n\n\n\n<li><strong>Fun\u00e7\u00e3o <code>map()<\/code>:<\/strong> Ferramenta de programa\u00e7\u00e3o essencial para converter (mapear) uma faixa de valores (a leitura do LDR) para outra faixa (os \u00e2ngulos do servo).<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Princ\u00edpio L\u00f3gico:<\/strong> A abordagem mais eficaz \u00e9 criar um sistema proporcional. O valor anal\u00f3gico lido pelo sensor LDR ser\u00e1 mapeado diretamente para um \u00e2ngulo do servo motor. Por exemplo, uma leitura de luz baixa (ex: &lt; 300) corresponde ao \u00e2ngulo de 0\u00b0 (janela fechada), e uma leitura de luz alta (ex: > 800) corresponde ao \u00e2ngulo de 90\u00b0 (janela aberta). A fun\u00e7\u00e3o <code>map()<\/code> calcular\u00e1 todas as posi\u00e7\u00f5es intermedi\u00e1rias, criando um movimento suave.<\/li>\n\n\n\n<li><strong>Guia de Solu\u00e7\u00e3o de Problemas (Troubleshooting):<\/strong>\n<ul class=\"wp-block-list\">\n<li><strong>Servo treme ou faz muito barulho:<\/strong> A causa mais comum \u00e9 alimenta\u00e7\u00e3o de energia insuficiente. Considere alimentar o servo com uma fonte externa, compartilhando apenas o GND com o Arduino.<\/li>\n\n\n\n<li><strong>Movimento da janela n\u00e3o \u00e9 suave ou n\u00e3o abre\/fecha totalmente:<\/strong> Calibre os valores na fun\u00e7\u00e3o <code>map()<\/code>. Use o Monitor Serial para ver qual valor o LDR l\u00ea no escuro e com luz forte e use esses n\u00fameros como os limites de entrada na fun\u00e7\u00e3o. Ajuste tamb\u00e9m os \u00e2ngulos de sa\u00edda (0 e 90) para corresponder ao movimento mec\u00e2nico da sua janela.<\/li>\n\n\n\n<li><strong>Janela fica abrindo e fechando com pequenas varia\u00e7\u00f5es de luz:<\/strong> Isso se chama &#8220;oscila\u00e7\u00e3o&#8221;. Veja o desafio extra para implementar uma solu\u00e7\u00e3o de histerese.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Desafio Extra (N\u00edvel Avan\u00e7ado):<\/strong>\n<ul class=\"wp-block-list\">\n<li>Implementar <strong>histerese<\/strong> na programa\u00e7\u00e3o. Para evitar a oscila\u00e7\u00e3o, crie limiares diferentes para abrir e fechar a janela. Por exemplo, a janela s\u00f3 abre se a luz for <strong>maior que 700<\/strong>, mas s\u00f3 fecha se a luz for <strong>menor que 400<\/strong>. Isso cria uma &#8220;zona morta&#8221; que ignora pequenas flutua\u00e7\u00f5es de luz.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Materiais Necess\u00e1rios:<\/strong>\n<ul class=\"wp-block-list\">\n<li><strong>Hardware:<\/strong> SmartMotor com Servo Motor (Placa B) <strong>OU<\/strong> (Kit Arduino, Protoboord, Servo Motor, Sensor LDR); materiais para a estrutura da janela; lanterna.<\/li>\n\n\n\n<li><strong>Software:<\/strong> Arduino IDE e\/ou conta na plataforma TinkerCAD.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Possibilidades de Aplica\u00e7\u00e3o e Expans\u00e3o:<\/strong>\n<ul class=\"wp-block-list\">\n<li><strong>Seguidor Solar:<\/strong> Adaptar o mecanismo e o c\u00f3digo (usando dois LDRs) para criar um painel que gira para seguir a fonte de luz mais forte, otimizando a capta\u00e7\u00e3o de energia solar.<\/li>\n\n\n\n<li><strong>V\u00e1lvula de Irriga\u00e7\u00e3o Autom\u00e1tica:<\/strong> Trocar o sensor LDR por um sensor de umidade do solo para criar uma v\u00e1lvula que abre e fecha automaticamente para irrigar plantas.<\/li>\n\n\n\n<li><strong>Controle de C\u00e2mera (Pan\/Tilt):<\/strong> Usar dois servos para controlar o movimento de uma pequena c\u00e2mera nos eixos horizontal (pan) e vertical (tilt).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Programa\u00e7\u00e3o Sugerida<br><\/strong>\/\/ Inclui a biblioteca Servo para controlar o motor.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">include<\/h1>\n\n\n\n<p>\/\/ Cria um objeto para controlar nosso servo motor.<br>Servo servoJanela;<\/p>\n\n\n\n<p>\/\/ Define os pinos<br>const int pinoLDR = A0; \/\/ Sensor LDR conectado ao pino anal\u00f3gico A0<br>const int pinoServo = 9; \/\/ Servo motor conectado ao pino digital 9<\/p>\n\n\n\n<p>\/\/ Vari\u00e1veis para armazenar os valores<br>int leituraLuz;<br>int anguloJanela;<\/p>\n\n\n\n<p>void setup() {<br>\/\/ Anexa o objeto servo ao pino correspondente.<br>servoJanela.attach(pinoServo);<br>}<\/p>\n\n\n\n<p>void loop() {<br>\/\/ 1. L\u00ea o valor do sensor de luz (um n\u00famero entre 0 e 1023).<br>leituraLuz = analogRead(pinoLDR);<\/p>\n\n\n\n<p>\/\/ 2. Mapeia a faixa de leitura da luz para a faixa de \u00e2ngulos da janela.<br>\/\/ Ajuste os valores 300 (escuro) e 800 (claro) conforme seus testes.<br>\/\/ Ajuste os \u00e2ngulos 0 (fechada) e 90 (aberta) conforme seu mecanismo.<br>anguloJanela = map(leituraLuz, 300, 800, 0, 90);<\/p>\n\n\n\n<p>\/\/ 3. Limita o \u00e2ngulo para garantir que ele n\u00e3o ultrapasse os limites f\u00edsicos.<br>anguloJanela = constrain(anguloJanela, 0, 90);<\/p>\n\n\n\n<p>\/\/ 4. Comanda o servo para mover para o \u00e2ngulo calculado.<br>servoJanela.write(anguloJanela);<\/p>\n\n\n\n<p>\/\/ Pequena pausa para estabilizar o servo.<br>delay(15);<br>}<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p><strong>Esquem\u00e1tico Eletr\u00f4nico<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/gfbilhalva4.wordpress.com\/wp-content\/uploads\/2024\/01\/image-7.png?w=1024\" alt=\"\" class=\"wp-image-104\"\/><\/figure>\n\n\n\n<p><strong>SmartMotors<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"544\" height=\"350\" src=\"http:\/\/educate.poa.ifrs.edu.br\/wp-content\/uploads\/2025\/09\/image-2.png\" alt=\"\" class=\"wp-image-59\" srcset=\"http:\/\/educate.poa.ifrs.edu.br\/wp-content\/uploads\/2025\/09\/image-2.png 544w, http:\/\/educate.poa.ifrs.edu.br\/wp-content\/uploads\/2025\/09\/image-2-300x193.png 300w\" sizes=\"auto, (max-width: 544px) 100vw, 544px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Criando um ambiente inteligente que reage \u00e0 luz. Vamos construir um dispositivo que traz a automa\u00e7\u00e3o para dentro de casa! O desafio desta atividade \u00e9 projetar e construir uma janela inteligente que se abre automaticamente com a luz do dia e se fecha ao anoitecer. Utilizando um sensor de luz e um servo motor, cada [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-57","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/wp-json\/wp\/v2\/pages\/57","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/wp-json\/wp\/v2\/comments?post=57"}],"version-history":[{"count":1,"href":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/wp-json\/wp\/v2\/pages\/57\/revisions"}],"predecessor-version":[{"id":62,"href":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/wp-json\/wp\/v2\/pages\/57\/revisions\/62"}],"wp:attachment":[{"href":"http:\/\/educate.poa.ifrs.edu.br\/index.php\/wp-json\/wp\/v2\/media?parent=57"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}