从实验角度来验证混沌数据可以被预测吗?

举报
tsinghuazhuoqing 发表于 2021/12/26 00:15:49 2021/12/26
【摘要】 简 介: 利用由两个晶体管组成的简易混沌电路产生物理混沌信号,通过计算机的声卡采集存储,为之后的实验制作数据集合。 关键词: 混沌,混沌信号预测   §01 混沌数据...

简 介: 利用由两个晶体管组成的简易混沌电路产生物理混沌信号,通过计算机的声卡采集存储,为之后的实验制作数据集合。

关键词 混沌混沌信号预测

 

§01 沌数据


一、背景介绍

  混沌数据可以有软件仿真而得到,也可以直接从自然现象中采集而得。下面就是根据前面 测试简单混沌电路系统的低频特性 中测试的电路,通过修改其中原器件参数,使其所产生的信号主要频道位于音频范围内,然后使用电脑声卡进行采集数据。

  采集数据之后,应用于信号与系统、人工神经网络课程的基础实验。

二、实验准备

1、实验电路

  仍然采用在 测试简单混沌电路系统的低频特性 中的由两个NPN(BC547-C)三极管组成的混沌电路。只是通过调整其中的C1,C2,C3使得所产生的混沌信号大约在1000Hz左右。

  下面是其中的实验框架,只是其中的电容需要进行改动。

▲ 图1.2.1  双晶体管混沌电路

▲ 图1.2.1 双晶体管混沌电路

  在 两个晶体管组成的混沌电路 中,C1,2,3使用了1nF,所产生的基础振荡频率为53.47kHz;在测试简单混沌电路系统的低频特性中,将C1,2,3修改成了220nF左右,主振荡频率为349Hz。

  注意:这并没有实际上按照C1,2,3 容值的增加呈现等比例的减小。电容增加了220倍,频率只是降低了 53.47 / 349 = 153.2 53.47/349 = 153.2 53.47/349=153.2倍。

2、设计C1,2,3电容值

  为了使得电路输出频率中心大约在1kHz ,需要修改电路中C1,2,3,4的取值。根据测试简单混沌电路系统的低频特性中的建立的模型,给出了不同C1,2,3取值情况下对应的理论计算值。

▲ 图1.2.2 不同C1,2,3取值下对应的移相振荡电路频率

▲ 图1.2.2 不同C1,2,3取值下对应的移相振荡电路频率

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# TEST2.PY                     -- by Dr. ZhuoQing 2021-10-03
#
# Note:
#============================================================
from headm import *
P = lambda x,y : x*y/(x+y)
#------------------------------------------------------------
R1 = 5.1e3
R2 = 5.1e3
R3 = 10.0e3
R4 = 10.0e3
rb = 2.7e3
c1 = 0.22e-6
c2 = 0.22e-6
c3 = 0.22e-6
def F(omiga, r=rb, flag=0):
    C1 = 1/(1j * 2 * pi * omiga * c1)
    C2 = 1/(1j * 2 * pi * omiga * c2)
    C3 = 1/(1j * 2 * pi * omiga * c3)
#------------------------------------------------------------
    r1 = R4 + P(C3,r)
    r2 = R3 + P(C2, r1)
    r3 = P(C1, r2)
    Urb_1 = P(C3, rb) / r1
    U1_2 = P(C2, r1) / r2
    U2_c = r3/(R1+R2+r3)
    Fomiga = Urb_1 * U1_2 * U2_c
    if flag > 0:
        printff(abs(Urb_1), abs(U1_2), abs(U2_c), abs(Fomiga))
    return Fomiga
#------------------------------------------------------------
def c123_arg(c, r=rb):
    global c1,c2,c3
    c1 = c2 = c3 = c
    fdim = linspace(0.01, 1500, 10000)
    fabs = [abs(F(o,r)) for o in fdim]
    fangle = [angle(F(o,r))*180/pi for o in fdim]
    fid = [(lambda x: 0 if x < 100 else 1)(abs(a-b)) for a,b in zip(fangle[:-1], fangle[1:])].index(1)
    freq180 = fdim[fid]
    angle180 = angle(F(freq180, r))*180/pi
    abs180 = abs(F(freq180, r))
    return freq180, angle180, abs180
#------------------------------------------------------------
cdim = linspace(50, 200, 100)
fdim = []
for c in cdim:
    f,_,_ = c123_arg(c * 1e-9)
    fdim.append(f)
plt.plot(cdim, fdim)
plt.xlabel("Capacitor(nF)")
plt.ylabel("Frequency(Hz)")
plt.grid(True)
plt.tight_layout()
plt.show()
#------------------------------------------------------------
printf('\a')
#------------------------------------------------------------
#        END OF FILE : TEST2.PY
#============================================================

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62

  根据上述曲线,确定在1kHz左右,C1,2,3电容值应该在72nF左右,根据手头的电容,最终选择68nF电容。按照比例,选取C4的电容为22nF

电路电容值:
C1,2,3:68nF
C4:22nF

  电路中的电阻与原来电阻相同。两个三极管选择 BC547-C ,三极管的hFE都在500以上。

 

§02 集数据


一、搭建实验电路

  在面包板上搭建实验电路。

▲ 图2.1.1 在面包板上搭建的实验电路

▲ 图2.1.1 在面包板上搭建的实验电路

二、测量波形

  下面在工作电压为+9V情况下,测量电路在正常情况下与混沌情况下的信号波形。

1、正常震荡波形

  调节R5,使得电路没有进入混沌振荡状态。测量Q1集电极与C1上的电压波形。

▲ 图2.2.1 测量Q1集电极与C1上电压X-T波形

▲ 图2.2.1 测量Q1集电极与C1上电压X-T波形

  可以看到对应的频率为854Hz左右,与前面计算的1kHz相差很多。电路正常振荡频率与R5的阻值,工作电压都有关系。

2、混沌振荡波形

▲ 图2.2.2 测量Q1集电极与C1上电压X-Y波形

▲ 图2.2.2 测量Q1集电极与C1上电压X-Y波形

▲ 图2.2.3 测量Q1集电极与C1上电压X-T波形

▲ 图2.2.3 测量Q1集电极与C1上电压X-T波形

三、电脑音频接入

1、制作音频输入接口

  由于采集的信号是单个通道的信号,所以需要将它们转变成两个通道的接口。通过两个330Ω将单个信号输入 电脑的音频输入端口。

▲ 图2.3.1 制作电脑的音频线路输入线

▲ 图2.3.1 制作电脑的音频线路输入线

2、测试输入信号

(1) 接入电脑线路输入接口

  将信号接入电脑的线路输入插座:

▲ 图2.3.2 将信号接入电脑的线路输入插座

▲ 图2.3.2 将信号接入电脑的线路输入插座

(2) 设置线路输入增益

  调节线路输入属性中的“级别”,改变输入信号的增益。 下面是输入200mVpp的正弦波的情况下对输入增益进行调整。

▲ 图2.3.3  设置线路输入增益

▲ 图2.3.3 设置线路输入增益

(3) 使用Audacity采集输入信号

▲ 图2.3.4 使用Audacity录音软件获得输入信号波形

▲ 图2.3.4 使用Audacity录音软件获得输入信号波形

四、录制混沌信号

1、录制混沌信号

  调节R5使得电路处于混沌震荡状态。 以下是C1,Q1集电极信号X-Y显示轨迹波形。

▲ 图2.4.1 混沌信号状态

▲ 图2.4.1 混沌信号状态

  下面是录制的两个通道的信号波形。
▲ 图2.4.2 录制的混沌信号波形

▲ 图2.4.2 录制的混沌信号波形

  存储的数据文件:Chaos2.WAV,Chaos4.WAV。

  调节到另外的振荡模式重新录制混沌信号波形。

▲ 图2.4.3 混沌波形X-Y轨迹

▲ 图2.4.3 混沌波形X-Y轨迹

  存储的数据文件为: Chaos3.WAV。

2、录制正常震荡波形

▲ 图2.4.4 正常振荡信号X-Y显示波形

▲ 图2.4.4 正常振荡信号X-Y显示波形

▲ 图2.4.5 正常震荡信号波形

▲ 图2.4.5 正常震荡信号波形

  存储音频文件: Chaos5.WAV。

 

验总结 ※


  用电脑的声卡记录有混沌电路产生的混沌信号,用于未来的展示与实验的数据。

  本文使用了由两个三极管组成的混沌振荡电路产生混沌信号,通过电脑的声卡进行录制。建立了这样的实验系统。


■ 相关文献链接:

● 相关图表链接:

文章来源: zhuoqing.blog.csdn.net,作者:卓晴,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuoqing.blog.csdn.net/article/details/120769354

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。