找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3118|回復(fù): 16
打印 上一主題 下一主題
收起左側(cè)

關(guān)于精密電壓源電路

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1064668 發(fā)表于 2023-3-8 12:03 來(lái)自觸屏版 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
需要做一個(gè)電壓0-100mv,分辨率10uV的電壓源,沒做過(guò)類似的,大佬們有相關(guān)推薦嗎,精密器件那些比較好
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:230500 發(fā)表于 2023-3-8 13:52 | 只看該作者
沒有推薦, 因?yàn)榻?jīng)濟(jì)能力有限;見都沒見過(guò)!即使買這樣的成品電源應(yīng)該都不便宜!
回復(fù)

使用道具 舉報(bào)

板凳
ID:332444 發(fā)表于 2023-3-8 14:39 | 只看該作者
千進(jìn)制/10=百進(jìn)制,這樣的電壓源做什么?可以用大范圍可調(diào)電壓經(jīng)過(guò)精密分壓獲得.
回復(fù)

使用道具 舉報(bào)

地板
ID:883242 發(fā)表于 2023-3-8 16:40 | 只看該作者
你先找一臺(tái)能夠測(cè)試這么低電壓的臺(tái)式萬(wàn)用表再說(shuō)。
回復(fù)

使用道具 舉報(bào)

5#
ID:1034262 發(fā)表于 2023-3-8 17:05 | 只看該作者
其實(shí),我最難回答這種沒有相機(jī)計(jì)數(shù)要求參數(shù)的問(wèn)題。

樓主只要一個(gè)電壓0-100mv,分辨率10uV的電壓源,沒有說(shuō)交流、直流,那就默認(rèn)直流。
沒有電流要求,沒有精度,沒有控制方式要求,太好了,一個(gè)TL431輸出2.5V,一個(gè)1K電位器串聯(lián)24K電阻,接到2.5V上,電位器滑動(dòng)端輸出就是0~100mV,分辨率理論上無(wú)窮小。
回復(fù)

使用道具 舉報(bào)

6#
ID:1057925 發(fā)表于 2023-3-8 18:47 | 只看該作者
隨便買一個(gè)可調(diào)電源,按照比例電阻分壓就可以了
回復(fù)

使用道具 舉報(bào)

7#
ID:401564 發(fā)表于 2023-3-8 21:50 | 只看該作者
基本可以確定,這是一個(gè)新手
參數(shù)都是想當(dāng)然的去確定一個(gè)參數(shù),然后就哐哐哐的......要這么干 ,這那么干........
回復(fù)

使用道具 舉報(bào)

8#
ID:491577 發(fā)表于 2023-3-8 22:10 | 只看該作者
coody_sz 發(fā)表于 2023-3-8 17:05
其實(shí),我最難回答這種沒有相機(jī)計(jì)數(shù)要求參數(shù)的問(wèn)題。

樓主只要一個(gè)電壓0-100mv,分辨率10uV的電壓源,沒 ...

再加一個(gè)運(yùn)算放大器做電壓跟隨就有20mA輸出能力了。
回復(fù)

使用道具 舉報(bào)

9#
ID:460466 發(fā)表于 2023-3-9 08:39 | 只看該作者
溫度影響決不可忽略了!要在恒溫室里工作?
回復(fù)

使用道具 舉報(bào)

10#
ID:879348 發(fā)表于 2023-3-9 09:29 | 只看該作者
10uV是什么概念,感覺一條導(dǎo)線感應(yīng)環(huán)境的電磁波就有可能產(chǎn)生這個(gè)電壓
回復(fù)

使用道具 舉報(bào)

11#
ID:1034262 發(fā)表于 2023-3-9 12:07 | 只看該作者
hhh402 發(fā)表于 2023-3-8 22:10
再加一個(gè)運(yùn)算放大器做電壓跟隨就有20mA輸出能力了。

樓主沒有輸出電流要求。
回復(fù)

使用道具 舉報(bào)

12#
ID:584814 發(fā)表于 2023-3-9 14:36 | 只看該作者
幾毛錢買個(gè)干電池,再用個(gè)100K的可調(diào)電阻最好是多圈的那種就可以,呵呵。
要知道就算免費(fèi)隨便可以有了高精度電表,準(zhǔn)確測(cè)量10uV環(huán)境也是呵呵呵的。
回復(fù)

使用道具 舉報(bào)

13#
ID:688692 發(fā)表于 2023-3-10 10:21 | 只看該作者
樓主是要做熱電偶信號(hào)發(fā)生器?去看看現(xiàn)成的產(chǎn)品吧。工業(yè)信號(hào)發(fā)生器(過(guò)程校準(zhǔn)儀)
回復(fù)

使用道具 舉報(bào)

14#
ID:883242 發(fā)表于 2023-3-10 19:47 | 只看該作者
如果是過(guò)程儀表校準(zhǔn)儀的話,應(yīng)該用閉環(huán)控制,單片機(jī)控制一個(gè)分辨率很高但是精度不用很好的DAC輸出電壓,然后用一個(gè)帶高精度基準(zhǔn)源的ADC測(cè)試并調(diào)整DAC輸出即可。
回復(fù)

使用道具 舉報(bào)

15#
ID:382454 發(fā)表于 2023-3-13 11:23 | 只看該作者
新手好象很難喔。。。。。。。。。。。。。!
回復(fù)

使用道具 舉報(bào)

16#
ID:155507 發(fā)表于 2023-3-13 19:10 | 只看該作者
單片機(jī)控制一個(gè)分辨率很高但是精度不用很好的16位DAC輸出電壓

單片機(jī)源程序如下:
  1. #include <reg51.h>   //包含此頭文件后,里面聲明的寄存器不需要再手動(dòng)輸入,避免重復(fù)定義
  2. #include <stdio.h>
  3. #define uchar unsigned char   //對(duì)數(shù)據(jù)類型進(jìn)行聲明定義
  4. #define uint  unsigned int

  5. #define LCD1602_DB P0
  6. sbit LCD1602_RS = P1^0;  //寄存器選擇信號(hào) H:數(shù)據(jù)寄存器          L:指令寄存器
  7. sbit LCD1602_RW = P1^1;  //寄存器選擇信號(hào) H:讀取寄存器          L:寫入寄存器
  8. sbit LCD1602_E  = P1^2;  //片選信號(hào)   下降沿觸發(fā)

  9. sbit LTC1655_DIN = P3^5;  //數(shù)據(jù)
  10. sbit LTC1655_CLK = P3^6;  //時(shí)鐘
  11. sbit LTC1655_CS  = P3^7;  //使能片選信號(hào)

  12. sbit KEY1  = P1^6; //按鍵用于加
  13. sbit KEY2  = P1^7; //按鍵用于減

  14. uint OutPutValue =1000; //定義毫伏輸出變量

  15. static void delay(unsigned char ms) //延時(shí)
  16. {
  17.         unsigned char i;
  18.         while(ms--)
  19.         {
  20.                 for(i = 0; i< 115; i++);
  21.         }
  22. }

  23. /* 向 LCD1602 液晶寫入一字節(jié)命令,cmd-待寫入命令值 */
  24. void LcdWriteCmd(unsigned char cmd)
  25. {
  26.         LCD1602_RS = 0;
  27.         LCD1602_RW = 0;
  28.         LCD1602_DB = cmd;
  29.         LCD1602_E = 1;
  30.     delay(5);
  31.         LCD1602_E = 0;  //下降沿將數(shù)據(jù)寫入LCD1602
  32. }
  33. /* 向 LCD1602 液晶寫入一字節(jié)數(shù)據(jù),dat-待寫入數(shù)據(jù)值 */
  34. void LcdWriteDat(unsigned char dat)
  35. {
  36.         LCD1602_RS = 1;
  37.         LCD1602_RW = 0;
  38.         LCD1602_DB = dat;
  39.         LCD1602_E = 1;
  40.     delay(5);
  41.         LCD1602_E = 0;  //下降沿將數(shù)據(jù)寫入LCD1602
  42. }
  43. /* 設(shè)置顯示 RAM 起始地址,亦即光標(biāo)位置,(x,y)-對(duì)應(yīng)屏幕上的字符坐標(biāo) */
  44. void LcdSetCursor(unsigned char x, unsigned char y)
  45. {
  46.         unsigned char addr;
  47.         if (y == 0) //由輸入的屏幕坐標(biāo)計(jì)算顯示 RAM 的地址
  48.                 addr = 0x00 + x; //第一行字符地址從 0x00 起始
  49.         else
  50.                 addr = 0x40 + x; //第二行字符地址從 0x40 起始
  51.         LcdWriteCmd(addr | 0x80); //設(shè)置 RAM 地址
  52. }
  53. /* 在液晶上顯示字符串,(x,y)-對(duì)應(yīng)屏幕上的起始坐標(biāo),
  54. str-字符串指針,len-需顯示的字符長(zhǎng)度 */
  55. void LcdShowStr(unsigned char x, unsigned char y,
  56. unsigned char *str, unsigned char len)
  57. {
  58.         LcdSetCursor(x, y); //設(shè)置起始地址
  59.         while (len--) //連續(xù)寫入 len 個(gè)字符數(shù)據(jù)
  60.         {
  61.                 LcdWriteDat(*str++); //先取 str 指向的數(shù)據(jù),然后 str 自加 1
  62.         }
  63. }

  64. /* 初始化 1602 液晶 */
  65. void InitLcd1602()
  66. {
  67.         LcdWriteCmd(0x38); //16*2 顯示,5*7 點(diǎn)陣,8 位數(shù)據(jù)接口
  68.         LcdWriteCmd(0x0C); //顯示器開,光標(biāo)關(guān)閉
  69.         LcdWriteCmd(0x06); //文字不動(dòng),地址自動(dòng)+1
  70.         LcdWriteCmd(0x01); //清屏
  71. }

  72. //LTC1655的驅(qū)動(dòng)代碼程序
  73. void LTC1655_Write(unsigned int LTC1655_out) {
  74.     unsigned char bitctr = 16;  //輸出16位數(shù)據(jù)

  75.     LTC1655_CS   = 0;  //使能拉低將數(shù)據(jù)寫入LTC1655
  76.         do
  77.         { if(!(LTC1655_out & 0x8000))        // if b15 is a '0' bit
  78.         LTC1655_DIN = 0;    //輸出數(shù)據(jù)0
  79.                 else
  80.                 LTC1655_DIN = 1;    //輸出數(shù)據(jù)1
  81.                 LTC1655_CLK = 0;    //拉低為下個(gè)時(shí)鐘數(shù)據(jù)作準(zhǔn)備
  82.                 delay(5);
  83.                 LTC1655_CLK = 1;    //輸出時(shí)鐘
  84.                 LTC1655_out <<= 1;  //準(zhǔn)備下一位數(shù)據(jù)
  85.         } while(--bitctr);

  86.     LTC1655_CS   = 1;
  87. }


  88. void main(void)
  89. {
  90.         InitLcd1602(); //初始化液晶
  91.     LcdShowStr(0, 0, "Millivolt SigGen", 16); //毫伏信號(hào)發(fā)生器

  92.     while (1)
  93.     {
  94.                 if(KEY1==0) //按鍵加
  95.                 {
  96.                         delay(25);
  97.                         if(KEY1==0)
  98.                         {
  99.                                 OutPutValue++;
  100.                         }
  101.                 }
  102.                 if(KEY2==0) //按鍵減
  103.                 {
  104.                         delay(25);
  105.                         if(KEY2==0)
  106.                         {
  107.                                 OutPutValue--;
  108.                         }
  109.                 }
  110.                 LcdSetCursor(1, 1);  //設(shè)置光標(biāo)位置
  111.                 LcdWriteDat('0' + (OutPutValue / 10000));   //顯示百位; //顯示內(nèi)容
  112.                 LcdWriteDat('0' + (OutPutValue / 1000% 10));
  113.                 LcdWriteDat('0' + (OutPutValue / 100 % 10));
  114.                 LcdWriteDat('.' );
  115.                 LcdWriteDat('0' + (OutPutValue / 10 % 10));
  116.                 LcdWriteDat('0' + (OutPutValue % 10));

  117.                 LTC1655_Write(OutPutValue); //輸出16位數(shù)據(jù)
  118.                         
  119.     }
  120. }


復(fù)制代碼




回復(fù)

使用道具 舉報(bào)

17#
ID:883242 發(fā)表于 2023-3-13 22:02 | 只看該作者
angmall 發(fā)表于 2023-3-13 19:10
單片機(jī)控制一個(gè)分辨率很高但是精度不用很好的16位DAC輸出電壓

OP07精度在這里還是不夠用,換chopper stabilized amplifier
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表