Spectromètre de bricolage) explorer l’inconnu-> (28 / 32 étapes)

Étape 28 : Le Code

Ce code peut être porté vers IDE Arduino de Energia et fonctionne parfaitement sur les deux plates-formes.

Vous pouvez télécharger energia ici : http://energia.nu/download/

CHANGER le x et le D AND THE nm VARIABLES à MATCH vos résultats de la dernière étape ! Sinon votre étalonnage sera mon étalonnage pour ma machine, pas vôtre. Il échoue alors à fournir des données précises.

Le Code ci-dessous est à utiliser avec une carte SD et le flux en direct.

#include « SPI.h » #include « pfatfs.h » #define cs_pin 10 / / puce pin select #define read_buffer 128 / / taille (en octets) de lecture de la mémoire tampon unsignedshortint bw, br; / /, i ; tampon de char [read_buffer] ; int rc ; DIR dir ; / * Objet répertoire * / fno FILINFO ; / * Objet d’informations de fichier * ///I/O Belowconstint StepperMotor = P2_4 ; constint StepperDirection = P2_5 ; constint capteurs [] = {P1_3} ; Ajouter plus de capteurs ici! \//Constants pour étalonnage ci-dessous! constdouble nm = 405 ; Source de Calibration connue Frequencyconstdouble x = 33,28 ; Distance du point supérieur à la « Screen » constdouble D = 48,78 ; distance à la « Screen » constdouble degreesperstep = 18 ; Degrés par étape pour le stepper motorconstdouble micropas = 8 ; Cela vous permet de déterminer la fréquence à laquelle l’échantillon à prélever (inverse microstep) constdouble mmPerRotation = 2,76 ; Il s’agit de la distance entre les deux dents de la broche qui déplace le capteur vers le haut et downconstdouble heightofTray = 38.00 ; Sous estimer cela un starty bitconstdouble = 32,35 ; constboolean carte SD = false ; Jouer avec le dessous à vos propres risques! ///constdouble stepsperrotation = 360/degreesperstep ; constdouble microstepsuntilend = heightofTray/mmPerRotation * stepsperrotation * (micropas) ; constdouble d = (nm*1e-9)/sin(atan(x/D)) ; const double d = 720e-9; //const double x = (nm * 1e-9 * d); int wavelengthvIntensity [sizeof (capteurs) -1] ; datafile int = 0 ; double cnt = 0 ; char buf [30] ; double tempnm = 0 ; double currenty = 0 ; constdouble zéro = starty-x ; char de ksk = « 0 » ; voidconfigurationsérie.println()série; Série.print (« a échoué avec rc = ") ; Serial Serial Série.println (« écriture scan Data") ; Delay(100) ; BW = 0 ; pour (int i = 0; j’ai < sizeof(wavelengthvIntensity);i++) {sprintf (buf, "% lu, «, wavelengthvIntensity[i]) ; int StringLength = strlen(buf) ; RC = FatFs.write (buf, StringLength, & bw) ; Si (rc ||! p.c.) break ; } sprintf (buf, « %lu\n\r », tempnm) ; int StringLength = strlen(buf) ; RC = FatFs.write (buf, StringLength, & bw) ; Si die(rc) (rc) ; RC = FatFs.write (0, 0, & bw) ; Finaliser l’écriture si die(rc) (rc) ; RC = FatFs.close() ; Fermer die(rc) IPSI (rc) ; } voidbouclesériesériesériesériesérie

Le Code ci-dessous est le Code pour le spectromètre : Live Mode uniquement.

Stepping motor Belowconstint d’e/s = P2_4 ; constint StepperDirection = P2_5 ; constint capteurs [] = {P1_3} ; Ajouter plus de capteurs ici! \//Constants pour étalonnage ci-dessous! constdouble nm = 405 ; Source de Calibration connue Frequencyconstdouble x = 37,65 ; Distance du point supérieur à la « Screen » constdouble D = 50.00 ; distance à la « Screen » constdouble degreesperstep = 18 ; Degrés par étape pour le stepper motorconstdouble micropas = 8 ; Cela vous permet de déterminer la fréquence à laquelle l’échantillon à prélever (inverse microstep) constdouble mmPerRotation = 2,76 ; Il s’agit de la distance entre les deux dents de la broche qui déplace le capteur vers le haut et downconstdouble heightofTray = 38.00 ; Sous estimer cela un starty bitconstdouble = 32,35 ; Jouer avec le dessous à vos propres risques! ///constdouble stepsperrotation = 360/degreesperstep ; constdouble microstepsuntilend = heightofTray/mmPerRotation * stepsperrotation * (micropas) ; constdouble d = (nm*1e-9)/sin(atan(x/D)) ; const double d = 720e-9; //const double x = (nm * 1e-9 * d); int wavelengthvIntensity [sizeof (capteurs) -1] ; datafile int = 0 ; double cnt = 0 ; char buf [30] ; double tempnm = 0 ; double currenty = 0 ; constdouble zéro = starty-x ; char de ksk = « 0 » ; annulerle programme d’installationsérie.begin(9600) ; Ah, j’ai oublié d’ajouter ceci en particulier grâce à le tommy_goh1997 pour repérer le bug ! pinMode (Stepping motor, sortie) ; pinMode (StepperDirection, sortie) ; digitalWrite (Stepping motor, faible) ; digitalWrite (StepperDirection, basse) ; pour (int j’ai = 0; j’ai < sizeof(wavelengthvIntensity);i++) {pinMode (entrée de capteurs [i]);} pour (int j’ai = 0; j’ai < microstepsuntilend; i ++) {digitalWrite (Stepping motor, élevée); delayMicroseconds(250) ; digitalWrite (Stepping motor, LOW); delayMicroseconds(250);} digitalWrite (StepperDirection, élevée) ; } voidbouclesériesériesériesériesérie

Articles Liés

3D spectromètre imprimés, à l’aide de kit de bricolage de laboratoire Public.

3D spectromètre imprimés, à l’aide de kit de bricolage de laboratoire Public.

Ce Instructable montre comment améliorer le standard Public Lab DIY Kit de spectrométrie, en utilisant un corps 3D imprimés. Une principale amélioration du nouveau design, est une disposition robuste pour fixer le câble USB.Le périphérique actuel peu
Linkit One - spectromètre à double faisceau

Linkit One - spectromètre à double faisceau

Mon expérience professionnelle s'articule autour des travaux de laboratoire et, plus récemment, installation d'équipements de laboratoire. Mon dernier employeur était une entreprise pharmaceutique et avant d'être réduite, j'ai été en mesure d'obtenir
Interféromètre de bricolage : Mentir Einstein en 20 Minutes !

Interféromètre de bricolage : Mentir Einstein en 20 Minutes !

Ce qui est lumière ? C'est une particule ou est-ce une vague ? Ce qu'est une question imprudente ! Comme nous le savons, ce ne sont pas mutuellement exclusives caractéristiques. « Particule » décrit la composition d'une substance et « vague » décrit
Spectromètre à la lumière d’une lampe d’inspection tête « piles »

Spectromètre à la lumière d’une lampe d’inspection tête « piles »

Bonjour, si vous aimez cette s'il vous plaît prendre le temps de voter dans les compétitionsMERCIÀ la fin de ma lumière de détection instructable où j'ai joué avec la mesure de réduction des niveaux de lumière de soleil ainsi que ce qui en fait un je
Mini-spectromètre à partir d’un DVD et papier plié

Mini-spectromètre à partir d’un DVD et papier plié

Expériences d'écriture avec une transmission libres caillebotis spectromètre de DVD, de papier et de caméra. Un gadget très efficace pour obtenir une formation pratique en spectroscopie !Application pratique : il peut être utilisé par exemple pour vé
Silhouette coupé spectromètre Public laboratoire Mobile

Silhouette coupé spectromètre Public laboratoire Mobile

Je suis un fan de spectromètres. Ces instruments sont utilisés dans l'industrie et de la science pour connaître les compositions et des choses (liquides, étoiles, LED, tubes fluorescents compacts) par le biais de la lumière qu'ils émettent ou absorbe
Thermomètre de bricolage Miniature

Thermomètre de bricolage Miniature

Pour seulement quelques dollars et quelques composants que vous avez pose autour de votre zone de travail, vous pouvez construire un thermomètre min que tient dans votre poche. L'ensemble du circuit est assis bien droit au sommet d'une pile de 9v et
Spectromètre/LED array à l’aide de LED Charlieplexed

Spectromètre/LED array à l’aide de LED Charlieplexed

Dans ce instructable nous construire un tableau de LED qui peut ensuite être contrôlé avec un Arduino, ou n'importe quel autre AVR microcontroller, ou Raspberry Pi, ou ce que vous voulez. Simplement, nous construisons l'outil ici et vous pouvez l'app
PH-mètre électronique bricolage pas cher

PH-mètre électronique bricolage pas cher

un pH-mètre électronique est composée de 3 principaux composants ; la sonde de pH, le voltmètre et le circuit.Étape 1: la sonde pH La sonde pH mesures pH pour exercer l'activité de cations hydrogène entourant une ampoule de verre à parois minces à so
Vumètre de bricolage LM3914N

Vumètre de bricolage LM3914N

partie de l'apprentissage sur electronics est juste déconner avec blinkies LED - Lumières font tout mieux !  Eh bien, le LM3914N est une led bar pilote, qui est, il peut, avec quelque puissance, allume un tas de LED à la fois en réponse à un signal.
Voltmètre analogique bricolage

Voltmètre analogique bricolage

Hé, dans ce instructable je serait vous montrer comment faire un voltmètre analogique avec corriger lectures. Travail sur le principe de force magnétique générée par l'électricité. Avec cette idée géniale, vous n'avez pas besoin d'acheter un nouveau
Mètre à ruban bricolage numérique

Mètre à ruban bricolage numérique

Hey tout le mondeAujourd'hui, je souhaite vous apprendre tout sur les capteurs à ultrasons et, espérons-le, à la fin que vous aurez un joli ruban à mesurer peu numérique de votre choix à utiliser comme vous s'il vous plaît.Profitez deÉtape 1: Liste d
BRICOLAGE d’huile essais de Pollution

BRICOLAGE d’huile essais de Pollution

Je travaille avec la communauté de Laboratoire Public , et nous avons mis au point des outils de mesure pollution DIY.Le Kit de test huile Homebrew est un open source, kit de bricolage qui tente de rendre possible d'identifier la pollution par les hy
Analyse infrarouge bricolage

Analyse infrarouge bricolage

Salut! Nous faisons partie de la communauté de laboratoire Public, qui développe des outils de mesure de la pollution DIY. Il s'agit d'une technique permettant de modifier un point régulier et shoot appareil photo numérique ou un webcam dans une camé