文号
t59607
阅读
12678
回复
11
收藏
5
没钱买万用表 所以做了个arduino 欧姆表
2013/08/12
IP:云南
电路超简单基于电阻分压测电压 求未知电阻
已知电阻接在vcc和A0 被测电阻接在GND和A0
Untitled Sketch_bb.png

材料 arduino一块 电阻一根 usb2ttl一块 电脑一台
被测电阻的阻值最好接近已知电阻 在这里采用100欧 测到几千欧没问题
+10
科创币
ms1175555
2013/08/22
让我们看看实物吧
布布卡作者
13年4个月前IP:未同步
559530
1楼
增加了一个电阻 现在可以测到200千欧
连接: D3与A0 D4与A0分别接100欧 5000欧(可以随便接个数量级差不多的 程序中需对应) 被测电阻接在A0与GND


引用
评论
布布卡作者
13年4个月前IP:未同步
559531
2楼
感觉不爽 待会试试测电感
ps 上面程序对于100欧以下有较大误差 IO口输出不是5v 随负载降低 [s:220]
引用
评论
13年4个月前IP:未同步
559540
3楼
貌似买arduino的钱够买一个中档万用表了。。。。
+1
科创币
布布卡
2013/08/13
arduino虽然渣 虽然贵 虽然垃圾 但抓起来就能用 而且傻瓜式操作 省心
引用
评论
布布卡作者
13年4个月前IP:未同步
559544
4楼
电脑蓝屏3次  没保存。。表示3块钱的 usb2ttl 很难用 白写了好长时间
引用
评论
布布卡作者
13年4个月前IP:未同步
559546
5楼
回 3楼(kokming999) 的帖子
我arduino18元买的 mini [s:275]
引用
评论
布布卡作者
13年4个月前IP:未同步
559593
6楼
假电容害死人那 皮上写着25v 47uf 实测10uf。。
用tone产生方波测阻抗求电容电感不现实 精度基本没有。。
现在电容用micros测 看到justinpiggy已经做了 这里我就[s:274](串口发到电脑显示 其它一样)
https://www.kechuang.org/t/40041


int WaveOutPin=12;

int MeasureInPin=A0;


long a,b,c,length;
float k,Calibration,C,R;
int Ca,Cb;
float lo,hi;


void setup(){
  Serial.begin(9600);
  
  
  pinMode(WaveOutPin,OUTPUT);
  digitalWrite(WaveOutPin,LOW);
  
  k=1-exp(-1);
  R=5000;
  c=140;
  delay(500);

}

void loop(){
  lo=analogRead(MeasureInPin);
  //digitalWrite(WaveOutPin,HIGH);
  hi=1023;
  digitalWrite(WaveOutPin,HIGH);
  a=micros();
  Calibration=(hi-lo)*k+lo;
  while(1==1){
    if (analogRead(MeasureInPin)>=Calibration) {
      b=micros();
      break;
    }
  }
  digitalWrite(WaveOutPin,LOW);

  delay(100);
  C=((b-a-c))/R;
  Ca=C;
  Cb=(C-Ca)*100;
Serial.println(C,2);
}

引用
评论
13年4个月前IP:未同步
559637
7楼
晕倒,这成本不太对头吧。万用表也不是很贵
引用
评论
布布卡作者
13年4个月前IP:未同步
559638
8楼
主要我想用电脑画出数据图像 最好是无线的  市面的万用表太贵
ps 维基百科图全挂了 肿么办?
引用
评论
布布卡作者
13年4个月前IP:未同步
559676
9楼
现在还是用RC RL 电压变化关系 在这里都是令t=τ  百度资料 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
测量电感
这个速度跟不上 测大电感可以 (几亨利)
int WaveOutPin=12;
int MeasureInPin=A0;
long a,b,c;
float k,Calibration,L,R;
float hi;
void setup(){
  Serial.begin(9600);
  pinMode(WaveOutPin,OUTPUT);
  digitalWrite(WaveOutPin,LOW);
  
  k=exp(-1);
  R=100;
  c=100;
  hi=1023;
  delay(5);

}

void loop(){
  
   digitalWrite(WaveOutPin,HIGH);
     a=micros();
  Calibration=hi*k;
  while(1==1){
    if (analogRead(MeasureInPin)<=Calibration) {
      b=micros();
      break;
    }
  }
  digitalWrite(WaveOutPin,LOW);

  delay(100);
  L=((b-a-c))*R;
Serial.println(L);
}

ps 上面代码还没测试
引用
评论
13年4个月前IP:未同步
559873
10楼
回 3楼(kokming999) 的帖子
不会啊,普通的uno开发板要不了多少钱的。
引用
评论
13年3个月前IP:未同步
645019
11楼
难得的好东西,多谢楼主!!
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的