Taula de continguts:

Iris sensible a la llum: 4 passos
Iris sensible a la llum: 4 passos

Vídeo: Iris sensible a la llum: 4 passos

Vídeo: Iris sensible a la llum: 4 passos
Vídeo: Правила работы с микроскопом / Как настроить / Инструкция 2024, De novembre
Anonim
Image
Image
Iris sensible a la llum
Iris sensible a la llum

Aquest tutorial mostra com crear un diafragma d’iris que, com l’iris humà, es dilati amb poca llum i es restringeixi en entorns de llum brillant.

Pas 1: impressió 3D

Impressió 3D
Impressió 3D
Impressió 3D
Impressió 3D
Impressió 3D
Impressió 3D

El procés de fabricació dels components impresos en 3D d’aquesta compilació podria tenir la seva pròpia pàgina de tutorial i, de fet, és el que feia per fer-los:

www.thingiverse.com/thing:2019585

He inclòs els fitxers aquí per comoditat.

Algunes notes sobre aquest exemple, les fulles (o fulles) de l’iris es van produir realment amb una impressora de resina utilitzant els mateixos fitxers a causa de les limitacions de la impressora 3D. A més, tota la impressió es va augmentar un 10%. Aconseguir que les peces funcionessin juntes va fer una mica de treball detallat, vaig acabar donant forma a les peces amb paper de sorra fina, un ganivet utilitzat i una broca.

Altres iris que vaig investigar durant aquest procés:

souzoumaker.com/blog-1/2017/8/12/mechanica…

www.instructables.com/id/How-to-make-a-12-…

Pas 2: parts

Parts
Parts
Parts
Parts
Parts
Parts

Les imatges mostren les parts que necessiteu, així com algunes de les eines i materials que he utilitzat per construir el model que es mostra a la galeria:

- Diafragma d’iris imprès en 3D

Servomotor Futaba S3003

- Microcontrolador Arduino UNO

Resistència dependent de la llum: resistència fosca 1M ohm / resistència a la llum 10 ohm - 20k ohm

- Potenciòmetre analògic de 10 k ohmis

- Resistència de 500 ohm

- PCB (placa de circuit imprès)

- capçaleres (cinc)

- filferro: negre, vermell, blanc i groc

- cables del connector dupont (dos)

- soldador (i soldadura)

-multímetre

- retalls de filferro

L’estructura que alberga aquest prototip es va fer amb MDF, fusta contraxapada de 3/4 polzades, cola per a fusta, pistola de cola calenta, filferro rígid (d’un penjador i un clip de paper), a més de diversos trepants i broques, una serra de taula i un serra de cinta, polidora i molta prova i error. L’objecte de les fotos és la tercera iteració.

Pas 3: construcció del circuit / allotjament

Construcció del circuit / habitatge
Construcció del circuit / habitatge
Construcció del circuit / habitatge
Construcció del circuit / habitatge
Construcció del circuit / habitatge
Construcció del circuit / habitatge

Tenia un enigma d’estil "pollastre i ou" mentre dissenyava aquest aspecte. Com que no tinc experiència amb esquemes electrònics, prefereixo pensar en el circuit en funció de la seva configuració real o pseudo-esquemàtica. Vaig trobar que l’arquitectura de la carcassa de MDF / contraxapat i el cablejat es limitaven de manera inesperada. Vaig intentar trobar alguna cosa visualment senzilla i autònoma.

-El potenciòmetre va ser una idea de fase final durant la pluja d'idees per afegir un ajustador de "sensibilitat", ja que les condicions d'il·luminació ambiental poden variar molt, el potenciòmetre i la resistència junts prenen el lloc d'una resistència normal en l'aspecte divisor de tensió del circuit. No puc entrar en detalls sobre això, perquè realment no sé com funciona tot.

-La part vertical de la carcassa (feta de MDF) té un lleuger angle. Per tal de girar en el mateix pla que l’iris, vaig fer servir una polidora de cinturó muntada a la taula per crear el mateix angle sobre el servomuntatge de fusta que vaig enganxar a la base de fusta contraxapada.

-També vaig trobar que el servo preferia aixecar la placa MDF de la base en lloc d'articular l'iris, de manera que vaig afegir una grapa de retenció de fil que s'insereix a la part frontal per bloquejar les dues peces. Mentre hi estava, vaig afegir pins del tauler Arduino del mateix cable. Per cert, el cable que connecta el braç de l’actuador amb el servo és un clip de paper.

-L’iris s’adapta perfectament al MDF, però fins i tot he afegit una mica de cola calenta per evitar que tota la carcassa giri al sòcol en lloc de només el braç de l’actuador. Això feia necessària una alineació més precisa del braç de la servopalanca del que esperava. El que probablement és obvi per a molts que utilitzen aquest tutorial, encara que per a mi inesperat quan vaig començar, va ser que la rotació del servo i la rotació de l’iris són 1: 1. Vaig haver de fer una petita extensió de braç de plàstic perquè el servo aconseguís el mateix radi que el braç de l’actuador de l’iris. El codi originalment va aprofitar al màxim el potencial de rotació del servo, però vaig acabar mesurant la rotació real de l’iris, i després, mitjançant proves i errors, vaig trobar un valor personalitzat per als graus de rotació del servo que va aconseguir un efecte interessant.

- Moltes de les connexions de cablejat importants s’amaguen a sota de la PCB a les imatges. Em vaig oblidar de fer una foto d’aquesta cara del PCB abans d’enganxar-la al MDF en calent. Això és bo, ja que ningú hauria de copiar l’embolic que vaig amagar sota aquell petit tros de PCB. El meu objectiu per a la PCB era tenir capçaleres per als connectors de 5 volt, terra i servo perquè les peces es poguessin separar fàcilment per solucionar problemes imprevistos en el futur, una característica que va ser molt útil. Vaig indicar l'orientació adequada per als connectors de capçalera amb un tros de cinta adhesiva al MDF al costat del PCB, tot i que suposo que podria haver escrit directament al MDF … semblava el correcte en aquell moment.

Pas 4: Codi

Codi
Codi

#include // servoteca

Servo serv; // declaració del nom del servo

int sensorPin = A1; // seleccioneu el pin d'entrada per a LDR

int sensorValue = 0; // variable per emmagatzemar el valor provinent del sensor

int timeOUT = 0; // variable per a servo

int angle = 90; // variable per emmagatzemar polsos

configuració nul·la ()

{

serv.attach (9); // fixa el servo al pin 9 a l'objecte servo Serial.begin (9600); // estableix el port sèrie per a la comunicació

}

bucle buit ()

{

sensorValue = analògicRead (sensorPin); // llegiu el valor del sensor

Serial.println (sensorValue); // imprimeix a la pantalla els valors provinents del sensor

angle = mapa (sensorValue, 1023, 0, 0, 88); // converteix els valors digitals en graus de rotació del servo

escriptura serv (angle); // fa que el servo es mogui

retard (100);

}

Recomanat: