完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
利用颜色传感器读取pH试纸的颜色,然后得到他代表的pH值。一开始想拟合出一个关于RGB和pH的函数,但是总是效果不好。于是利用神经网络来根据RGB判断他的pH值。
思路是首先利用MATLAB训练出神经网络,然后将神经网络导出来,移植到F4上。 x=inputn;net=newff(minmax(x),[5 1],{'tansig','purelin'},'trainlm');net.trainParam.epochs = 1000;net.trainParam.goal = 1e-6;[net,tr]=train(net,x,outputn); %训练神经网络iw=net.iw{1,1}; %导出神经网络lw=net.lw{2,1};b1=net.b{1};b2=net.b{2};F4上的神经网络计算函数 void Get_pH() //神经网络计算函数{u8 i=0;RGB_data[0]=(float32_t)R/255.0; //RGB归一化存入矩阵RGB_data[1]=(float32_t)G/255.0;RGB_data[2]=(float32_t)B/255.0;arm_mat_mult_f32(&iw,&RGB,&temp); //DSP指令,矩阵相乘for(i=0;i<5;i++){h_data=2/(1+exp(-2*(temp_data+b1)))-1; //tansig函数}arm_mat_mult_f32(&lw,&h,&pH);pH_data=(float32_t)((pH_data+b2)*14.00);}用到关键变量 float32_t iw_data[15]={ 37.8146271525703f, 61.6224915049775f, -116.119809374016f,1.96880581432674f, -0.597865017458179f, -1.00688890479118f,5.58165621812740f, 1.88117664982108f, -4.44180569880110f,152.824588053478f, -132.267718125163f, -22.9259593680010f,88.8431847421991f, 551.674736239499f, 404.835691342993f};float32_t lw_data[5]={-28.7273044233606f,-1.03643090499672f,0.313686607538904f,0.146049290519538f,-0.0206856023439895f};float32_t temp_data[5];float32_t h_data[5];float32_t RGB_data[3];float32_t pH_data;float32_t b1[5]={22.6580899725128f,-0.510182522968968f,-3.52855071976284f,-2.82498427573125f,-92.7000542294773f};float32_t b2=29.396496369741858f;arm_matrix_instance_f32 iw={5,3,iw_data};arm_matrix_instance_f32 lw={1,5,lw_data};arm_matrix_instance_f32 temp={5,1,temp_data};arm_matrix_instance_f32 h={5,1,h_data};arm_matrix_instance_f32 RGB={3,1,RGB_data};arm_matrix_instance_f32 pH={1,1,&pH_data};需要注意的是,这里开了F4的FPU并且用到的DSP库,所以需要添加“arm_math.h”这个头文件。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1771 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1619 浏览 1 评论
1070 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
724 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1673 浏览 2 评论
1935浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
728浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
567浏览 3评论
593浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
551浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 12:09 , Processed in 1.038956 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号