From 7a204b2dddd877c081ab910578d2f6fa380eaa3a Mon Sep 17 00:00:00 2001 From: ks Date: Fri, 7 Mar 2025 16:20:38 +0100 Subject: [PATCH] rendu git --- Arduinoscript/Arduinoscript.ino | 67 ++++++++++++++++++++++++++++++++ README.md | 5 ++- img/cable.png | Bin 0 -> 15696 bytes 3 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 Arduinoscript/Arduinoscript.ino create mode 100644 img/cable.png diff --git a/Arduinoscript/Arduinoscript.ino b/Arduinoscript/Arduinoscript.ino new file mode 100644 index 0000000..395cd0a --- /dev/null +++ b/Arduinoscript/Arduinoscript.ino @@ -0,0 +1,67 @@ +#include +#include +#include +#include + +#define SAMPLE_BUFFER_SIZE 512 +short sampleBuffer[SAMPLE_BUFFER_SIZE]; +volatile int samplesRead = 0; +static const char channels = 1; +static const int frequency = 16000; + +// Ultrasonic instructions +byte triggerPin = 11; +byte echoPin = 12; + +void setup() { + Serial.begin(9600); + while (!Serial); + + if (!HS300x.begin()) { + Serial.println("Failed to initialize humidity temperature sensor!"); + while (1); + } + PDM.onReceive(onPDMdata); + if (!PDM.begin(channels, frequency)) { + Serial.println("Failed to start PDM!"); + while (1); + } + HCSR04.begin(triggerPin, echoPin); +} + +void loop() +{ + float temperature = HS300x.readTemperature(); + int volume = getVolume(); + double* distances = HCSR04.measureDistanceCm(); + String output = String(temperature) + "|" + String(distances[0]) + "|" + String(volume); + Serial.println(output); + delay(1000); +} + +int getVolume() +{ + int maxVolume = 0; // Initialize variable to store the maximum volume + int sum = 0; + + if (samplesRead > 0) { + for (int i = 0; i < samplesRead; i++) { + int sampleAbs = abs(sampleBuffer[i]); + if (sampleAbs > maxVolume) { + maxVolume = sampleAbs; // Update max volume if a higher value is found + } + } + samplesRead = 0; // Reset after processing + } + + return maxVolume; +} + +void onPDMdata() +{ + int bytesAvailable = PDM.available(); + if (bytesAvailable) { + PDM.read(sampleBuffer, bytesAvailable); + samplesRead = bytesAvailable / 2; // Update the number of samples read + } +} \ No newline at end of file diff --git a/README.md b/README.md index 510de95..99553b0 100644 --- a/README.md +++ b/README.md @@ -17,4 +17,7 @@ JS library (server): - socket-io (permet de communiquer entre serveur et client grace a des events) - socket-io-client - express (un framework basés sur les applications web) -- node:http \ No newline at end of file +- node:http + + +Cablage arduino : ![alt text](./img/cable.png) \ No newline at end of file diff --git a/img/cable.png b/img/cable.png new file mode 100644 index 0000000000000000000000000000000000000000..70a994595424a01704c0f00de8a401f84cf53322 GIT binary patch literal 15696 zcmeHu2UL^kx^9$FXT}lsjN>p$bG89y0AZv`*KrgB0*dtR&_tSqW`Gc8RM=KD7?2tZ zMQSkgj-p_wN)-Y`2STI<2t5$)`{BOl?zPuGcb|L8J!hS>S<999Cx7|A?|q;5d7k&n zwbLdByFTCdIR=B-g**AP83wa01cTX1`E)xRxk7w<9$r4Xc+w^SgAsm#{%xVi3yZU9Fp61qp0YSeQxcT|G1>y;( zJOcvZu!Z@FgNHGHeSDx{44z~^2KVz(^GlACgJEkuymkGVMvJD09iK_JYV1jWWNq`c zvgd6U&HTP=i+c24mPBiBf@X_%%YBBw%w92Nw**bLYV>_KwX65VuYaDE*3RMahi$3# z>E!i-p$e8?=~63yJzOHcbYeW%VWDiOcfuh%D=X_Wcq9zwYR41$=9{{4)3TlD-RUFG z9nfp!)~}|wqBmdPxhRTWA4Fb3qlRh24s1iO-|v5~h+dCu`7C4$dh_|oe_Y~!z+Bko zppYrBPd9VhW73+zK6-104?;i>L4>0>z z0sHy9Ca48nvLNny}n!(qrhB&?5;bYs5yg^l?=g3cL5cYb_$_N7fQ)_=WQ=^MDI0QQge~yOYhn6;q>3j8|H*9O5W5R5Lk>oDsFG!;>m-iI@}! zwTsPA&kpaD5FAGgr0&A;^IHmj*|?_k%$jHux5-WZIrfs1zQtGgP5=gRbn9j^#zU0cEBkWwZ((%DIAd4(nfuTGi1Fz(13gNaq4f(BGB zF$K0-MePq)TAfH|ZQ6oNo#K!2#cgd&$W`SZTI~<5TyL7ooYHJG*you!GF3XUTD{_qe;J)TadR)@_m>QncC0ox`3uQpon>b?B}~uhO&Vuuv}0ap zKZ&?bBlr#l6c;D(JVqJ4sVxHCC0cJ`Tb4F8v2$AYpkMWprCVpF%i`q7qZ{NTU&ET^ zmuUoE+Og=7fq>W@k|%qdYV)~SnKGFvaaF~ib1G&V7)!O(@TE$I2+6wd^SXV8A1B^( zy|}l%W^k$Xer97=Ps5tesiDHjI0=^FrukK?e5Uer|W)g?Mi%{Ilko+LwfB|mN6 zTQ2bH_2?JtluObl@Hnzl{oN9^>%kp0#KGVdc94&n8e^{qw%3Vz%I;;r)a&oEvJHob zrSxr)YMZ1svb!fgX)5uhktj#0P(W^UBIxX7Io)^AnlkIl`&E6SgmFzf<-VWkTCiKE ztY7`ESewG}+jd1KQ$w?>h+{@lU$`-ga3(s3Ru<(_Cvt7rNks=MXZK;eR5yunPTq<1 z6MMVE%o_wg-oE$o$Arg-C-+hG)~IxY1zkC%>IE|yJ&mXIu~;?dBXi?9K^nU9l=1w2 z2al8}V!Y<~lacgz^0l0c`7RCE$|=iK(MYu+TMDAy)+yrsoY#}VQ@)=4Wu7uOlTY_m z*?Xzk%8Q1N{U)v}_|TMLYS|pez{yJQki2gnY@>YsH2wS;eElwlAIYxfjcs~ykD+4O ze$7y6PKEPP{6aV5rKs!@%jqvx(ub#>lsUXAaaNAfQEc4XG`eSBhug_e@3#k*YUh85 zekhxA&%5Xh{`qH&`7uVtgpAM*nUJ9b?@|XhF8#Y>WJz7UZwG?cdpG<#GZ>;Zch*+g zn`>>vAcxJ2;m_@E_t`A->+w6CSE>xYv0kTALU-w(N$;FUok%>Z+gmrz@X)GjB2d$6 zM4X;{x``LvxBrh0$)#taHE8Ijt5Gc<5qP6NPz(uE#l3P#WGt;#5Ne{yzBkWh>5F+6 z9PM!on+lwKdq{h-;8>gf##&2)N+$l5T!ONj;cdOu5A);Q@&|2;P7XKR>U?zk#{6WT zih&d{FvBFpRue1gc&t>kqi$9BsmMIY$mva!kQb&mHtEGzJ6D3hOPuQ@zmjy=>~GUm|8M zOS!Hu^wNB&Djp_icI+>`zuFhjuFHGt662QSQ<9}oKUclbV+Zm5n2gmJy5w@==C^Mi zR994JWu^q%w(0O%#3Pp96W(7HrMGEKsD3DHR;(PkE}wt?wB0Dh%8^lUu72*-ftV3K zYa=4RRUp;f#Sp%m&aIxP0 z;FCZD*qk3HXM+TL5USbTGznp^;< zEpL);CZQGh>bR)GJ#6{#ZS8$UwDTmBD;#u8hQ|^VpzQ>jao((f!9&$$Li1Vwi>y2)`W4_Kr+EtW3Y(s zSsr&a+pl`TGCL=y^U0eXwWZ%v49nN%n&q2wa*ss|a(RN%Ff1S*}GrlvH<>W-|l znf~^?$cj{#g+OFUhrB7 zf-IcKD|K{lxqmm^C|>{M|+#5ok~@Au+)=x`qFT*1Ni2Hd$j`3H{247_aAO>>onGAy{$ccUn2PJciPis zE+zdJa+=ObWkXaIy04Hq|+Vo4YKv_Ml`P=J_PqyWrXO;$lOD5ssl_=~WPv zp3D*-^2ke3rwx9B9v5S< zG(D&SV;=}+`mC&TNz^cIwT4T>O~(C0E@Ui~KfuAm+>W42AuziBh5>P$AWy5J)9rIS zJ2T2>p6?XP9jjD$;oD#2>66z%Z?r8se};^AUZc>$rMtVk%NP5-;w!Iwf@UZD+xLo6 zHt~uM%5aM&yijYBMtdcik%OhM(i*)$B{ZUz431kCJQgj3OC#ym>hE<38N@Qk(nkBbChSU1a6>2Z;<4rLe%py>5trDIWbN)rK9;re z=#g`k-z!oRO;WVj52GcUhGXm~c|5l| zLGys6C(OSw*n~C6ckkCB@eaX^Jy!N_9;m})dsj}Cprnec?0RuR%;z390RZQ?QHo~3 zXd29^XCK`y<5a@tsvkIU^A*a=rhN1;1x;&`$)>FUO|fa=2cBkUXJ7A$x^UqFel)?O zXQ;p%?hE$VN?lJ4k>7uaTg5Y(63i8O^(vx-B#%H~@!8$oVaP5aW{))RT4I=IL2eT{Q%(zUAz=flI@;`bZn=Ud;YdKWbh{ zzZ{9rWGNF@=e=uIMi)-Vln#Y@k-Jhm7ny#w18ixs>v&gI!jI>E3Lfxp^e!C??u+10 z$!{8eM-HM@ge+0&wGS{3hGk9;86psPtr`J6HXi8?mBGbCN7DL2GGR2K92hIg4*Q^P ziv@SdqH? zmD7T~i4dR;GN9|+~ldfZ1TmQ&__>Q8r|XY#+fE59ghuSiY{~`yl-V~ z2$rg#62l^E4&PLvL*at6%)+LMtx(e0`IbvJN`% zJWw8>;#?PLAF;wlyk-;q9?BQ>*m|)cmD*oi+pU5hd8O*vfn6F3^YevKqQplza$9Ts ziO%ec-KY@BN7KkR6f3?*hyu`s=TDXP_K0ctCc}!T>8~(MJF+cuP!yL#&K3e{c>Mn2 zT2C8dr0;g0L8fw+0zFiYVmOQ6qCj1GwH4^>Vs#YtNyk`Fdr)gus+aS^h>Cbno>xd+SHR7oobQ8_+$CBXvR|En9Yo-vKsPQldwg8<`*Ll-(f}esQ~qWHNR$ zBgQh4GGLH<^&`T4SirzE3?vC7_!#Yw>14zQN$V3%zy+uX_WKB<Kt{S6EP7lT|}1 z92)~l3ZsleV+U3kJQd!&w#LzKNBrdO0fP+EhG2|Y>gNclie>l5CZ8Ih>W|&47k*+((BS1nBiiN2#Ms*M9u^!wbOgU)0YZHZ_Qt(D%P2B;#_7vvX z1Di(``3v#GKQ0Z1IJF%fzKN(Hjx6R^b!fNDsaGS6SQRLVU4THjg>BjQAL=xg`47(l z6;h4SnLD|~dd7tGhQEO9_)=#YG}xX}3z zXDYwpF3%1Jygs@k-KNkTq0Y#iV|Y$VNRO1QS6$>5PncD5Q~(kPdo}T{WY^aZjuHeb z9IwW3@t7nm)2Gxyo#|bOgi?L92raJ`u-yjGN(Df4?Sp}S6RO~TUt^>wo61Y?g<7wD zER+e|JlkSJP#<$Z!S!kd3p6jLU8!%%iCaw@FH*Hbd~Hj89hf~C#!3C_7Tut!`qzOS zcjvRU!xkrte3&IAdB#cVs9aC^6Xg?KfRmspKzK%6?2`q$Q@n1eI{H}0m#nk;;V}W^ zgo@u#6vM! z3~7hx#Y36+i`=Drs~zkO-ilHNpm=d{agVLM(`rY&a`5EaP~GNWxYq#GYQjSIrqJ`s zFV86Pi8WRSb4Mo@i#WyQq`bWAXqG@bw1WOX+94;uB0JcaX>kZ931Jw@C%_!ViVu&> zt*kr%jVKOc*4>TOAdv!~s zoGpmTwoRNgGmOeTJ0z$y#y=lo6d8yuCh5zrJey{mtKQe+v=)XRFkuWGj6GH%Ei%|s zAfcDD*=Q*E3dKet1hQqE3Z#WSgcgN8KRu}3C?0UCWH6YC#J125;g*hcqgX72wOp?aTdEK=e~ive85fsXhQhX=P{REe}=gajT^@O?l{ z5KT94sY~>2xjEAIlF{9ctqw7%(LS6o=UnddUYk+6L)xKfY0~T6ybw7hN}6;(UYy4p zF*p#r^o`}>Z|$jO#_O!h1-9})@*--4j!1CtZnNZi7fjDo9#%g_8!G?}~eBzcNs4k?NZ;ERw z-}vUBA^E11z8;XHAQYB}XVPj`FOWw#`Wpmc{k0kNHB=>#+wl7hB^eyDpAhXHgMi=u z#kY4jRFWQU4r-Y@AoJLe#-B=WV=&@mv=^W{43(g0$Uu;Pdh2_kG$x~dpDO%z@+av{?=ts=Pw8MB_$dcf+*@Ap+V!bW z;SR^jnzo?~LX@D_i9`g5kAsX=V}Umji@hbL(e^iL=%%UB=Rr+j#L9A@W;gc&EUaxh z1mc(8{fa6Rx{i@jwJH*708HalLo#T5nFOdMqirck?yZS=7YAnE*Q0oX5rbk`WRW%y z|3ZG%g$WYq2UIM(C529l|G5w>PBA_HEM?*pY{)PKeWC4Nyh;I+Qn1d?w4yoU$jI&? zE!RsSV+XtUN9Q9*BVos&@H+yNR`u#pfd1BAaO;M`d9C81A0BE#J>qp3DY0QZt%wMv zg?IZz3roy_WfyPyDAg?M-nsgybaT19z=1z~c|iHx^D97Q++e*C3qwYib3T%AAPt&L zBj#ea2Vt%s-P|-Ge+Y03d1aa#YrIaNQsKj5EaWh$K+!yvsQN>SR*)gm8#z`q1o8o+ zEjThzsz<@Mp}3|4ZcpS_`c8uw7=Qp7>o4{KGorK#*d@|4V4x(orD*rIX~22?<#NS7 zOm&>4Rz9efvA0iMBw=W%@F2>kw^ZKV-R2KPms2);yBVZIC%6UuT9}tlE!|KyoIk%j z^B(cH(RM0TNciyn+SP6vIPQEv-NR^Y+?FW)z#QWbhUDRqJ- zY)RHEr1S9eHbA;)3@^A4N;{w0iWw+Ck4W&4H9YqIA5`qsL*Mh{7vpl zDf{r~2EN}jGd&|i22kZx<82940-=^16w#eOJ=OY35@-UV3VR-lg+k4yBU@_r_m{|L zEqVLP4XB97=R_IUa9bj2(=`y*`tShC_Jd!dqV&Acx}mD=_Wa6cXq05+iD{1BcTx5o zIQ&fU$g^@h+74s+`-98EO-Rmyt&t8XhZr3qi)e9>oQ&Ef7I$^0Xa*QYD=(EI&S+Ns z3QAHDEhD&L9gryARkIDqp^L?$V*aIp_}y4jJ{=l;K0jIeS+^-2!=tj7AD=uM<9J&Yg#Ra(=xv7TfW_s7+z3ME4@H0I-I8SN} z)SfskzHlp_9-B}eE5K#pj3X9j+Lc$Yy-Cm{xvSgz)qgQ@NWp^}8l0%+8HXiIRF}?? zNP^k{<%PHw2OW*1;(i6xtZ0ll$7b0Jg^TNDEuGZcwy|pCNq*tAd`&LJaml_ndAxkP zrKw)$7Rxq3O>k3Ddtz;rR-2{3smP=?KO_nplf^eOhk4D75eZJy3(Zw4mo)-Ryf{@Hf~|U#jjM3M5gW- zq0u(f+FQf&OVk4dEjlaxv3<21LBjg<yB`(wt`Jvd)Z-MkKFK7qZW2OI`S`T38eGpWJ@kB2bX=0KayRh&o9~F)^LZL_ z=*aEKFxN!Y3uL}im429ajX{qW-SM)XT`5y5%#KOrP|CG>+gIHIZ7AzgQ+9f58)NH?4G^ zy1?`kV z+pA9uA3d1b`=Gr`BV%+V%*6NfWeVY(;aqx9v)9kvtRXvVU(#CJh!>G8B#_rEGQjiM zLBoQO(^IOrCe{VkV$Pf(cQ0c$3|p^_-Qk^Rzua1(xdro19}qN~{z-H3(de`aIh%Q3 zx19wtyQj@2Uh74V_IQ?#mXHSGX!8O?pXzR{yt(=<`YlIm^}jFG4+|TznKMZx^7AP*FB^zwFO^CP*BN=1|6*RRD2$ueHDt#%eA7%y;l zi`D%K30nEALsN;RM!o90NG$&bMURmeDJCtmArjPE5%e?LowN@#y{n8HgvFB5!r9#A zyTiPzx1CMTV$T#{=7s- zfm6CcgKSc;Y4AFJrEJ!g@g;}icjCvT;wa)4j5EQ#Eja->v+41UO*rUKe(dK!A#w*a zPtYOY5z|1eC5`*jPo0ZR;#r zkGDwp!mmwcd47w0_nJO#5`}HsnyA{m&8cEP>e)8QEL*Sfq!={@8o9;&1-={H80?PV zY;DIMl~x*JVns7$23LE!V_oxPaGX4He1^17zlOIECejetSgVnaqS&s+U4f#_B{tC8t2K|ira8D5rZQASD5UE}ExCKy zZr@mD@GRN2U0tQ~>#n0JxXjdD69D!)JWjhQ7zj|m5m^P!kPbdc-}%S4_I;9x1Uc}z zcqsR5w8mgv6|&>(M%nRBCcp?U@G0XCZm%KbTd4ZAi^~hWPP9Q<(IcL926#uFz+NCL zY&8D#lV_DB-qhHw_@P9!Oo(EBZXB^Q#`D~*Us@fkkMEY1F^Z2XHCD$-UV1QH7Exel zL75+m&3$KOzD9b>o0;3yC0L|&9~-T96qKy8J;WAsiUz0IdZe0~aQm|<_Om3mU$LF< z>jEVVMxp(;Z99RXlwxtd6=NA-o*V$Dje#02$T$ac8<}Gu<0weg^F~{Z;9qBX00+5# zk8UU;4-ES4=7$34;M0x(A#Bf~)g%Hy+Xu9&Q5-Jheb9+Rw6!8|jQrH4dC35IN&lO~ zm55-d63-o$zde;|FB}L$Wv|X*!gy91X#>w}Nni+TV;w4GfVPQWJVGbe=G=Adf6Vx9 zP|UYeR#u_{D;s01xDt%7BT2I)l5Z}zMYB%lG5Q%X8}|p)GOA>_@!GOCL}gej7H*~( z%<=5~B~$h0}`U;woCk?cUtaP;N* ziC!h>+l6fx7Qg@O@(!z()W2s^x-dMQz5j8| zPq*vo4IS8-EBL+FvEI~tY`%h1F>2nfRuDRuAY6bSlFe$TRL&gwo262d8I>t3w;p! zP$+I`nn7B(q7UC@To&nBKo_0j_iJAB0o;0)Xm3Km!iY>#*d{l zn11oSoU0pt5RnDJT~Azla!1NJu&IUY5|cO4Nq57)IUdxw00ye&2jc9@k>mjK-2-BR zqiAQFr59ZO3XvPep3KXTS!vX7I?63!fm^{mguH#gqeCoM}&hWU4((nz|{ z-mSEd8?j>ELr5;5ox2FBfg!&&h&4b9Ie54wWOOr0m@1jm~2oz!Ih} z@uy;~oQ#JEvII7zV%4fPFEtR-4h2^8@Vu{MsT`hVkMW<7s10URGtdC1ZJ( zU1G>dj-4zzJ2>kSL!k-s@=a_@PDSvUbHBfayB+xsWY73UaD2DTU+g5xGB4$-t^G_f zp@rppnJm}~<;YUUF!CHCd3AFK>OcL!LEsb?Qjje7)plpql(}k(EZ0U_+1uA$&T-{K zfMplA;g8?XsU62e?)TsP@x%U;AAj@k=~o}yR=>UY_#=sb{^P^f4&C0p>?RBwTb<7_ z-`+m(YIn%{PihjA78{xmzXE~bWLZ(Q{CVY8C94C|Wc8BQ38=fT_9-AyRqgdTFx2kTH}=0HNH{LH=;=wam{*r}>Pt^IEN|^6=xFfy=|N^`9<^)lzZJr? zd7EhX9(g99Kbk2Y)W7|3CgOeOi@`rQ>1~vdu*Zn3E|cq@ObIJDehc@qzw9x+wV8K> z2=5=j_~J(OGf>D_{J!Zd9=Y@J*BpPqe%uuM$+eF^|2X>Z{c)~y8)xy`cC__lztR8e zG{Z^%hDG|DXIDt%TVGt_^-Xyv-Wt#y)Zr)-h5a;^Z*Z@JjxZ7kE+#9N74IU|VF)Ze#S#G2UTxW6Zm? zzZ*s9YybKf{I7oY1ExQwiuG;dXSBJuKD06x=i_{T?k{TM{PM{w&BKe%YVCVcW-pmo zIUm}IiIo2eQfTz+KFm8xvd6D`tY2-ljw#zIJG2-Db-v>y22&$_z}i3L01U0wG7 zaBTR$2kn1fO#JI{qiU4X-w-UmMJbrNGz?o2Bc%YpB1@k>*;;p9!FTJ7T|;t!WHd(p z%Xo;Jo?q@>&AG@?EYOh+x+HZ2ZNJ-~YH#kUP@IkD(%whe1 pEy+P=|Ib;9e=+y_Z#FHfJ9I9m9=VXW8i@vmJ8trG{!h-o{V(S!f&>5n literal 0 HcmV?d00001