USB推力计套件
novakon2013/07/14会员海报 IP:广东
前言:ASR要推力计,猴子诈死,本人救急。

除绿色板子STM8单片机为自制外,全部物料采购自淘宝,花费两小时安装调试完毕。实际上没有什么难度,主要是俺接错线了。
应变片这里用的是40kg量程的,当然,可以换。

串口输出16bit有符号数(是以字符串的形式输出的,当然也可以改成二进制),范围从-32768 ~ +32767。
应变片一致性相当好,校准之后可以当电子称用。

图就两张。
DSC_3470.jpg

QQ截图20130714040957.png
漏注:纵轴单位kg

按照KC惯例,接下来就是出套件,出套件,出套件。。。
清单包括:
任何你会用的单片机(并且你知道怎么写串口通信程序),
图中的一条PL2303 USB转串口线,
图中红色的HX711模块(淘宝现成的模块,不建议大家自己做,省下来的钱不够吃半碗饭的),
应变片(买最便宜的,其实一致性都不错,写个程序做个校准,好得很)。
+1  科创币    【四方】    2013/07/14 高质量发帖
+99  科创币    bh,王者归来    2013/07/14 叉辛苦了!!
+1  科创币    51区总管    2013/07/14 接……错……线
+1  科创币    布布卡    2013/11/10 电脑和烙铁和我的很像
来自:自助服务区 / 会员海报
23
1
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
novakon 作者
11年6个月前 修改于 10年2个月前 IP:未同步
547647
源汁源味
//pfm.c
#include <stmduino.h>
uchar per=0;
void datacame(){
  pinHigh(C3);
  pinmode(A1,INPUTFL);
  
  uchar dbuf[24];
  for(uchar i=0;i<24;i++)
  {
    //send clock
    pinhigh(A2);
    pinlow(A2);
    
    //read out
    dbuf=pinread(A1);
  }
  
  for(uchar k=0;k<3;k++)
  {
    //send code for next transfer
    pinhigh(A2);
    pinlow(A2);
  }
  pinmode(A1,INPUTWAITING);
  if(per==0){
    uchar buf[3]={0,0,0};
    for(uchar b=0;b<3;b++)//24bit -> 3byte
    {
      
      for(uchar i=0;i<8;i++)
      {
        if(dbuf[b*8+i])//if this bit is 1
        {
          //set this bit of this buffer byte to 1
          buf|=1<<(7-i);
        }
      }
    }
    //most significant 16bit to int
    int value;
    *(((uchar*)&value)+0)=buf[0];
    *(((uchar*)&value)+1)=buf[1];
    
    printf("%d",value);
    endl();
  }
  pinlow(C3);
}

void main()
{
  clock(16M);
  cpudivider(1);
  
  //connect D0 to A1
  //connect CK to A2
  pinmode(A1,INPUTWAITING);//data
  pinmode(A2,OUTPUT);//clock
  
  pinmode(C3,OUTPUT);//status pin
  
  attach(datacame,A);
  waitfor(A,FALL);
  
  serial(115200);
  interrupts();
  while(1){
    sleep();
    //save power
  }
}
引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
11年6个月前 IP:未同步
547717
回 2楼(cszal) 的帖子
是的,就这么几样。

贵的东西没有推广意义。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
11年6个月前 IP:未同步
547739
回 5楼(warmonkey) 的帖子
做的跟你一样,还不如用你的。。。
+1
科创币
kc地毯清洁员
2013-07-14
高质量发帖
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
11年6个月前 IP:未同步
547769
花30分钟写了上位机软件,使用方法非常简单:

1 将PL2303线插入计算机USB口
2 打开本人编写的软件
QQ截图20130714141627.png
可以看到数字随着应变片受力变化在跳动

3 按下Start/Stop 按钮,开始记录采样
4 再按一次,停止记录
5 按Save,存为CSV格式
QQ截图20130714141715.png

6 打开MATLAB,导入保存的CSV文件
QQ截图20130714141826.png
第一列是时间戳(毫秒),第二列是16bit量化的电压值,随推力变化而变化。

7 输入命令作图(当然,一般应该先做数据处理,包括校正、单位化)
QQ截图20130714141924.png
QQ截图20130714142127.png
+1
科创币
20!Dopaminor
2013-07-14
压力计放在音响上能采集音频么
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
11年6个月前 IP:未同步
547784
关于20!同志的问题:显然不能
红色板子是24bitADC模块(自带放大),速度只有80sps,专门用来对付各种应变片的。

如果需要24bit 192kHz采样,请将3.5mm音频线插入电脑声卡,并打开Audition等上位机软件进行采集。。。
+1
科创币
20!Dopaminor
2014-06-25
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
11年6个月前 IP:未同步
548303
asdfd.jpg

修改了上位机程序,加入较零和设定重量功能。

运行此程序需要.NET Framework4支持。
attachment icon mvmeterPC.zip 9.61KB ZIP 213次下载
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
11年6个月前 IP:未同步
548773
最新进展:qharryq订货1套,应变片自备。
感谢qharryq对本人研发工作的支持!!
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon作者
9年11个月前 IP:广东
747184
引用 yuchouxuan:
上位机软件开下源呗~~~~
源码不幸弄丢了
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
支持的图片格式:jpg, jpeg, png
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}