book诗意

岂止有点意思,简直book诗意。


  • 首页

  • 关于

  • 标签90

  • 分类51

  • 归档19

  • 日程表

  • 站点地图

  • 公益 404

  • 搜索

基于MSP430的函数信号发生器设计

发表于 2016-01-19 更新于 2019-08-27 分类于 TI MSP430 , 单片机 , 嵌入式

1.功能设计

1.1基本功能
  • 预置任意波形
  • 极性输出
  • 波形:正弦波、三角波、锯齿波、方波、阶梯波、脉冲波等
  • 频率:1HZ-10KHZ
  • 幅值:1V-5V
  • 偏移:0V-4V
  • 步进:1HZ、10HZ、100HZ、1KHZ
  • 占空比:0-99%
  • 工作模式控制
  • 电容触摸按键
  • 外部脉冲计数/频率计
  • FLASH存储当前设置(掉电保存)
1.2扩展功能
上位机参数/波形(串口)导入(支持保存)

波形:窄脉冲、高斯白噪声、调幅波形、调频波形

2.方案设计

2.1硬件方案
2.1.1主控芯片
MSP430系列单片机是美国德州仪器(TI)1996年开始推向市场的一种16 位超低功耗、具有精简指令集(RISC)的混合信号处理器(Mixed Signal Processor)

MSP430单片机称之为混合信号处理器,是由于其针对实际应用需求,将多个不同功能 的模拟电路、数字电路模块和微处理器集成在一个芯片上,以提供“单片机”解决方案。 该系列单片机多应用于需要电池供电的便携式仪器仪表中。其低功耗、技术支持成熟、 性价比高等特点十分适合做为本设计的主控芯片。
2.1.2模数转换
ADI公司生产的高速DAC芯片--AD5426,参数如下:8bit精度、50MHZ串行接口、10MHz乘法器带宽、四象限乘法、典型电压建立时间50ns。8bit的精度足够满足日常调试模拟电路的使用需求,50Mhz的SPI通信对于信号发生器来说也是绰绰有余,10Mhz的乘法器带宽为本设计中所需要的高速DA输出的要求做出了保障,50ns的快速建立电压也保证了高速输出的信号完整性。该系列DAC芯片还有10bit、12bit的高精度版本DAC,为以后的系统升级留下足够大的空间。
2.1.3增益调节
NE5532是高性能低噪声双运算放大器(双运放)集成电路。与很多标准运放相似,但它具有更好的噪声性能,优良的输出驱动能力及相当高的小信号带宽,电源电压范围大等特点。因此很适合应用在高品质和专业音响设备、仪器、控制电路及电话通道放大器。10Mhz的增益带宽满足了高速DA信号输出的要求,双电源供电保障了信号可以单、双极性输出。
2.1.4显示模块
采用LCD5110屏幕作为系统的显示模组,其原因如下:性价比高:LCD1602可以显示32个字符,而Nokia5110可以显示15个汉字,30个字符,Nokia5110裸屏仅8.8元; 接口简单:仅四根I/O线即可驱动,LCD1602需11根I/O线,LCD12864需12根;速度快:是LCD12864的20倍,是LCD1602的40倍; 低功耗:Nokia5110工作电压3.3V,正常显示时工作电流200uA以下,具有掉电模式,适合电池供电的便携式移动设备。
2.1.5参数输入
占空比、频率、步进、波形选择通过两个机械式旋转编码器来调节,其优点是旋钮可以无限旋转,单片机每次只对其相对增量进行测量,即每次开机可以自定义数据的大小,另外其较长的寿命和舒适的手感阻尼,目前在仪器仪表、音响、录音棚、汽车娱乐系统等应用十分广泛。

电容触摸按键用来调节单片机的工作模式:信号发生器/数字频率计,相较于机械式按键和电阻式触摸按键,电容式触摸按键不仅耐用,造价低廉,机构简单易于安装,防水防污,而且还能提供如滚轮、滑动条的功能,而且MSP430单片机内部集成了电容触摸的功能且官方提供了底层库,极大的提高了开发的速度降低了开发的成本和难度;

旋钮式电位器通过求和运算电路来调节输出信号幅值、偏移量,这样的做法即实现了功能的同时减小了单片机的运算量,而且保证了信号的不失真。
2.1.6信号通道
为屏蔽共模干扰采用卡扣型同轴电缆作为输入输出信号线。
2.2硬件框图

图片1

图1 系统硬件框图

2.3软件方案

图片2

图2 程序流程图

2.4 机壳设计
2.4.1机壳设计
出于对系统运行的稳定性、易用性和使用者的人身安全的考虑,本设计采用了塑料外壳的设计,塑料外壳不仅绝缘而且重量较轻,既隔离了人体又不会引起内部短路,另外塑料外壳十分便于打孔,这样可以在研发阶段手工钻孔,快速验证设计方案的合理性,这在工业设计中模型验证阶段是十分必要的,以免在开模后发现问题引来不必要的麻烦。
2.4.2机身内部
1.开关电源:该部分为高频高压部分,带有较强的电磁干扰,故将其放置在机身的角落,下方用四颗铜柱固定,脱离机壳底部,防止被短路和伤害使用者。

2.主控单元:该部分为低压低频部分,同样在主板底部用铜柱支撑起来,板子的接口采用了3pin,4pin,8pin的防呆接口设计,这样更便于研发人员的调试和升级。
2.4.3人机交互
该部分被固定在前面板,通过打孔的方式从机壳的内部伸出来。为了提高系统的可靠性,所有的旋钮、按键、插口都使用了外卡螺母的设计,这样可以避免人机接口因为经常被触碰到而产生松动的现象。在内部与主控板之间使用排线连接,避免了走线凌乱的现象。

图片3

图3 机壳结构设计

2.5前面板设计
为提高系统的易用性,前面板使用了中英双语的方式标注器件的功能,同时使用了紫-蓝渐变的方式作为底色,紫色部分与整个机身的相一致,蓝色部分又带有神秘的科技感,使用渐变的方式又不会使用户感觉面板设计很突兀,柔和的过度会给用户带来一种十分素雅的感受。

前面板的设计与整个机身配合非常协调和有序,却又不显得十分呆板,简约、灵动的设计风格,十分易用的界面,为人机交互和用户体验打下了良好基础。

图片4

图4 2D渲染图

图片5

图5 实物图


3.实际效果 图片6

图6 100HZ正弦波输出

图片7

图7 10Khz 方波输出

图片8

图8 76hz 锯齿波输出

图片9

图9 76hz三角波输出

图片10

图10 460hz窄脉冲输出

图片11

图11 100hz单极性正弦波输出

图片12

图12 在Vpp=230mv情况下100hz单极性三角波输出


4.应用场合

该系统主要作为实验仪器使用,常用在音响设备开发、电缆故障定位系统研究、放大电路信号源等方向,简介易用的设计可以更好的帮助研发人员加快研发节奏。

5.收获

在本学期做了三个工程项目,感触良多,从第一个项目开始的时候,刚刚接触KEIL,连最基本的建工程操作都漏洞百出,后来慢慢的了解了利用搜索引擎工具查阅资料,对IDE的掌握也越来越熟练,同时也发现:理论指导实践,实践出真知。当我们一味盲目的操作和编写代码的时候,没有理论的指导,这样的效率简直低的可怕,很有可能就是一个寄存器的设置不正确却因为没有仔细阅读数据手册而导致项目延误很多天;我们曾经对自己傲人的考试分数沾沾自喜,而如今想起来都忍不住为当初那点纸上谈兵的无知而脸红,理论存在的意义不是考试不是考研不是分数不是死记硬背,理论是前辈们辛辛苦苦总结出的定理、公式,其目的不是将规律抽象出来而已,而是为了更好的理解和传播前辈的只是,真正的意义是带着理论走到实践中,让我们后人有机会快速的站在巨人的肩膀上,只是为了向前迈一步。

6.遗憾与骄傲

  • 主控芯片选型比较盲目,直接使用了熟悉的MSP430(主要是由底层库,以后会把底层库整理完整后分享给大家),到了后期才发现,导致信号频率上不去的原因不是spi通信,而是主控的运算能力,因为ad5426能支持50M带宽的spi通信,而msp430g2553的最高频率为16mhz,其中还不包括运算时间,中断处理时间,spi寄存器准备时间,这样算下来速度实在是低得可怜,在这种高速度运算的项目里,我想fpga或者dsp应该才是更好的选择。

  • 前面板结构不够合理,两个大的数字电位器旋钮应该横向在一条水平线上,然后右侧的两个电位器旋钮在一条垂直线上,这样使用起来更顺手,看起来也更符合人类的审美。

  • 在这种高速信号的设计中,PCB的重要性就体现出来,首先可以任意布线,解决信号在高速传输过程中引起的阻抗不匹配问题,提高通信速率使其接近50Mhz,另外更有利于减小机体体积,系统的重复性也就越高;尽管有原理图的存在也远远达不到PCB所带来的高重复性。

  • 本次项目是至今为止最为系统的一次,有着完整的文档,流程图硬件框图,看起来更像是完整的项目了,其实关于信号发生器这已经做了第三个了,前两个都是基于DAC0832的,软件使用了自制的msp430函数库,优秀的软件结构使得系统的性能得到了最大化利用,硬件上主要风格是大量使用了带有防呆插头的排线,这样的好处是便于问题的排查,也便于器件的更换。

  • 精心打磨每一个细节,包括前面板每一个开窗、打孔,竭力做到丝毫不差。良好的交互界面和易懂的交互逻辑。简洁大方的机身和外观。就是为了证明,无论何时,优秀的设计都是必要的。

    ▼十分简陋的第一版信号发生器,主要的特点是左下角的摇杆,点按是波形切换,上下推实现幅值大小的设置,左右腿实现频率大小的调整。

IMG_20150707_015430

▼第二版的信号发生器 signal_generator_2


7.后记

时至2016-03,项目还没有彻底结束,目前主要问题/未完成功能有:
  • ADC采集并转化为有效的幅值和偏移电压信息
  • flash存储参数
  • 外部脉冲计数器/频率计
  • //自定义波形,通过串口发送
  • //串口上位机设计(基本不可能了)

基于Proteus仿真的89c51温度检测控制系统

发表于 2016-01-01 更新于 2019-08-27 分类于 MSC-8051 , 单片机

0、引言

本次系统介绍了以AT89C51单片机为核心的温度监测控制系统的工作原理和设计方法。温度信号由温度传感器芯片DS18B20采集,并以数字信号的方式传送给单片机,单片机再控制四位八段分立式数码管显示实时温度,默认下限阈值为25℃,默认上限阈值为30℃,且阈值温度支持通过独立按键来修改,当实际温度超出上限温度,系统将闪烁红色LED、启动蜂鸣器报警、打开风扇散热;当实际温度低于下限温度,系统将闪烁蓝色LED、启动蜂鸣器报警、打开加热器;当系统温度在上下限阈值温度之间(阈值保护:无法修改为下限阈值大于上限阈值)系统只有数码管显示温度,其他输出关闭。

1、研究目的

在粮仓温度检测、危险化学品仓库等温度检测中,传统的做法只是将温度作为一个输入参数,根据温度的高低发出不同的警报,而不能进行自主的温度调控,为解决这一问题,设计了本套仿真系统。

2、功能描述

读取由DS18B20作为温度传感器检测到的温度数值,并进行处理;

温度的实时显示;

可以通过按键在线调整上下限阈值温度;

不同方式的声光报警;

控制加散热器的启停;

3、硬件设计

本系统的主要硬件电路包括:温度检测电路,数码管显示电路,报警电路,加散热模块,按键检测模块。

图片1

图1 硬件框图

数码管显示单元:四位八段数码管,共阴接法,利用51单片机灌电流较强能力简化了硬件电路。

声光报警单元:一个有源蜂鸣器,红色和蓝色的LED各一个,同样采用共阴接法。

温度检测单元:DS18B20是一款数字式温度传感器,单总线通信和挂127个器件的特性极大的节约了单片机IO资源。

图片2 图2 仿真电路

4、软件设计

主要的软件模块包括:温度传感器程序、数码管显示程序、报警程序、按键检测及参数调整程序、定时器中断服务程序、外部中断服务程序。

4.1主函数

图片3 图3 主程序流程图设计

4.2定时器中断服务函数

图片4

图4 定时器中断服务函数流程图

4.3外部中断服务函数

图片5 图5 外部中断服务函数流程图

6、总结与感想

本项目实现了预期的功能的同时,也存在一些问题:

1.加热器和散热器只有开关控制,没有精准的线性控制,本系统只是一个简陋的闭环系统,实际控制效果并不会太好。在软件算法上可以根据自动控制原理,加入PID调节控制,做成稳定的闭环控制系统,相比之下这样更有实际意义。

2.DS18B20可以在总线上挂127个从器件,这样做可以节省大量的IO引脚,用来检测多个节点的温度,这样的做法在实际的粮仓温度检测的实际应用中是非常实用的。

3.数据存储功能,可以将过去的节点温度存放至数据存储器或外置FLASH中,这样在断电后或出现故障后有线索供我们查找,便于发现问题。 鉴于时间的原因,以上的缺陷会在以后进行升级优化。

本学期做了三个工程项目,感触良多,从第一个项目开始的时候,刚刚接触KEIL,连最基本的建工程操作都漏洞百出,后来慢慢的了解了利用搜索引擎工具查阅资料,对IDE的掌握也越来越熟练,同时也发现:理论指导实践,实践出真知。当我们一味盲目的操作和编写代码的时候,没有理论的指导,这样的效率简直低的可怕,很有可能就是一个寄存器的设置不正确却因为没有仔细阅读数据手册而导致项目延误很多天;我们曾经对自己傲人的考试分数沾沾自喜,而如今想起来都忍不住为当初那点纸上谈兵的无知而脸红,理论存在的意义不是考试不是考研不是分数不是死记硬背,理论是前辈们辛辛苦苦总结出的定理、公式,其目的不是将规律抽象出来而已,而是为了更好的理解和传播前辈的只是,真正的意义是带着理论走到实践中,让我们后人有机会快速的站在巨人的肩膀上,只是为了向前迈一步。

源代码与仿真下载链接:【8051单片机】基于Protues仿真的温度监测控制系统.rar

基于Proteus仿真的89c51电子时钟设计

发表于 2015-12-02 更新于 2019-08-27 分类于 MSC-8051 , 单片机 , 软件设计

1.项目总体设计思路

1.1功能说明

本小组采用了比较常用的AT89C52作为核心控制芯片,用汇编语言进行编程来满足设计的要求。用LED数码管来实现时、分、 秒的显示,通过3个按钮开关可以对时钟进行调整,其他外接电路还有晶振电路、复位电路等等。

本小组设计的主要功能有时分秒显示,时分秒调整键。

1.2设计思路

本工程的设计思路是根据所要实现的功能先选择硬件电路的器件,硬件电路的连接方式,硬件电路主要含有按键模块,显示模块,晶振电路模块,复位电路模块;硬件设计基础上编写汇编程序实现功能,程序设计中主要包含按键模块(外部中断),显示模块,计时模块(定时器中断)

2.硬件方案设计

2.1计时方案的选择

方案一:采用实时时钟芯片。

实时时钟芯片具备年、月分、秒计时功能和多点定时功能,计时数据的更新每秒自动进行一次,不需程序干预。计算机可通过中断或查询方式读取计时数据进行显示,因此计时功能的实现无需占用CPU的时间,程序简单。此外,实时时钟芯片多数带有锂电池做后备电源,具备永不停止的计时功能;具有可编程方波输出功能,可用做实时测控系统的采样信号等;有的实时时钟芯片内部还带有非易失性RAM,可用来存放需长期保存但有时也需变更的数据。由于功能完善,精度高,软件程序设计相对简单,且计时不占用CPU时间.

方案二:软件控制。

利用单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时及秒表计时。该方案节省硬件成本,且能使设计者对单片机的指令系统能有更深入的了解,从而掌握单片机应用技术MCS-51汇编语言程序设计方法,因此,本系统设计采用此种软件控制方法来实现计时。而由于ATMEL公司的AT89C52单片机是低功耗的具有4KB在线可编程Flash存储器的单片机。它与通用80C51系列单片机的指令系和引脚兼容。片内的Flash可允许在线重新编程,也可使用通用非易失性存储器编程。它将通用CPU和在线可编程Flash集成在一个芯片上,形成了功能强大、使用灵活和具有较高性能价格比的微控制器。它的功能强大,而且也较容易购买。

综合比较,方案二的硬件电路更为简洁,且容易实现,性价比较高。

2.2时间调整电路

本小组采用了独立式按键设计,如图所示,独立式按键直接与单片机I/O口相连构成键盘,每个按键不会相互影响,因本系统用到的按键比较少,采用独立式键盘不会浪费I/O口线,所以本系统采用独立式键盘。按键一端接地,一端接于P1.4,P1.5,P1.6口,分别调整时分秒的数值。

2.3显示电路

2.2.1扫描方式的选择

本小组选用LED数码管作为显示部分的主要元件,数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。
方案一:静态显示驱动
静态显示就是显示驱动电路,具有输出锁存功能。当显示器显示某个字符时,相应的段恒定的导通或截止,直到显示另一个字符为止。即单片机将所有要显示的数据送出后就不再控制LED,直到下一次显示时再传送一次新的显示数据。静态显示的数据稳定,数码管的亮度较高,占用的CPU时间少,程序容易,管理简单,但占用的I/O线资源教多。静态显示中,每一个显示器都要占用单独的具有锁存功能的I/O接口,该接口用于笔划段字型代码。这样单片机只要把要显示的字形代码发送到接口电路,该字段就可以显示发送的字形。要显示新的数据时,单片机在发送新的字形码。动态扫描方法是用其接口电路把所有显示器的8个笔画段a~h同名端连在一起,而每一个显示器的公共极COM各自独立的受I/O线控制。CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是哪个显示器亮,则取决于COM段,而这一段是由I/O控制的,由单片机决定何时显示哪一位了。优点:程序简单,亮度高。缺点:所占I/O口过多,不适合数目多的数码管设计课题。
方案二:动态显示驱动
数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,在轮流显示过程中,每位数码管的点亮时间为1~2mS,由于人的视觉暂留现象及发光二极管的余辉效应,只要扫描的速度足够快,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。

综上所述:我所要用到的数码管共有14位,更加适合用动态扫描。

3.硬件框图

图片1

4.软件流程图

图片2

5.仿真效果

图片3

源代码+原理图下载链接:【8051单片机】基于Protues仿真的电子时钟设计.rar

声音信号的频谱分析及其噪声处理

发表于 2015-11-02 更新于 2019-08-27 分类于 数字信号处理 , 算法

0、引言

音频在现实生活中应用广泛,对于音频的处理很是重要。目前,在很多语音处理系统中都用到了语音分析模块,采集现场的声音并进行频谱分析。经查询资料得到语音信号频率范围:100——7000Hz;音乐信号频率范围(人的听力范围):20-20k Hz 。 语音信号是基于时间轴上的一维数字信号,在这里主要是对语音信号进行频域上的分析。

在信号分析中,频域往往包含了更多的信息。对于频域来说,大概有8种波形可以让我们分析:矩形方波,锯齿波,梯形波,临界阻尼指数脉冲波形,三角波,余弦波,余弦平方波,高斯波。对于各种波形,我们都可以用一种方法来分析,就是傅立叶变换:将时域的波形转化到频域来分析。于是,本课题就从频域的角度对信号进行分析,并通过分析频谱来设计出合适的滤波器。当然,这些过程的实现都是在MATLAB软件上进行的,MATLAB软件在数字信号处理上发挥了相当大的优势。

1、研究目的

将声音信号在时域中的波形转变为频率域的频谱,进而可以对声音信号的信息作定量解释。从而便于发现信号的频率特征,以此来达到滤除噪音、提取伴奏、变调等在时域难以实现的目的。 **2、研究意义**

在频域分析信号的最常见目的是分析信号属性。工程师通过分析频谱就可以知道输入信号中有那些频率的信号和没有那些频率的信号。另外在时间域内往往要解微分方程,而用傅立叶和拉普拉斯变换到复频域后就变成了代数方程,求解起来减少了很多的计算量,提高了计算机系统对于大量信号的处理效率。 **3、研究内容**

1.对一段完整的音频信号进行时频域分析,随后加入高斯白噪声,再对加入噪声的音频信号进行分析,研究高斯白噪声分别在时域和频域对信号波形的影响,设计一种FIR,尽可能的滤除高斯白噪声还原原始信号。

2.对比分析纯伴奏信号和歌曲信号的频域波形的差距,设计一种陷波器,尽可能的滤除歌曲中的人声以便得到高品质的伴奏。 **4、核心算法**

尽管传统的DFT算法能够获取信号频域特征,但是算法计算量大,耗时长,不利于计算机实时对信号进行处理。因此至DFT被发现以来,在很长的一段时间内都不能被应用到实际的工程项目中,直到一种快速的离散傅立叶计算方法——FFT,被发现,离散傅立叶变换才在实际的工程中得到广泛应用。 FFT(Fast Fourier Transformation),即为快速傅氏变换,是离散傅氏变换(DFT)的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。

一个N点的DFT变换过程可以用两个N/2点的DFT变换过程来表示,其具体公式如下所示DFT快速算法的迭代公式:

图片9

式中为偶数项分支的离散傅立叶变换,为奇数项分支的离散傅立叶变换。 我们利用MATLAB中的wavread命令来读入(采集)语音信号,将它赋值给某一向量。再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。对于波形图与频谱图(包括滤波前后的对比图)都可以用MATLAB画出。我们还可以通过sound命令来对语音信号进行回放,以便在听觉上来感受声音的变化。

5、不同采样率下信号的差异

图片4

图1不同采样频率重采样原始信号后得到的时频域波形

如图1所示是在MATLAB软件中对原始信号进行频谱分析,并分别以20KHz,10KHz,5KHz的采样频率对原始信号进行重采样(抽取和插值),画出其信号波形图并且对其进行频谱分析。

原始采样频率为44KHz,信号频率范围覆盖了人耳的听觉范围,此时声音信号完整饱满;降低采样频率到20KHz后,从听觉上会发现高频部分时而有缺失;降低采样频率到10KHz后,原始音乐的高音部分表现大部分有缺失;降低采样频率到5KHz后,信号的高频部分完全听不出;经过试验也发现,降低采样频率对信号重采样和信号通过一个低通滤波器效果等同。 **6、带单一频率噪声信号的分析及滤除**

图片5

图2滤除高频噪声信号图像

如图2所示是在MATLAB软件中画出原始信号的波形和频谱图,并且画出加入以及去除高频正弦噪声信号后的波形和频谱图。

在原始信号中以信噪比为5加入12KHz的正弦信号作为干扰信号,播放此信号时会发现伴有十分的刺耳高频声音,频谱分析后发现信号在12KHz频率处有较高幅值,可知此处的信号幅值主要来自于正弦干扰在频域的表现,为滤除高频噪声,设计滤波器时的计算参数为:通带上限频率11.5KHz,阻带下线频率12KHz,据此参数冲激响应不变法设计一种巴特沃兹低通滤波器,进而还原原始信号。

图片6

图3滤除中频噪声信号图像

如图3所示是在MATLAB软件中画出原始信号的时域波形和频谱图,并且画出加入以及去除中频正弦噪声信号后的时域波形和频谱图。

在原始信号中以信噪比为2加入1.4KHz的正弦信号作为干扰信号,频谱分析后可以清楚的看到干扰信号在频域的表现,根据干扰信号的特性,设计了一款陷波器(带阻滤波器),通带上下限截止频率为1.45Khz和1.35KHz,阻带上下限截止频率分别为1.3KHz和1.5KHz,边带区的衰减为0.1dB,截止区衰减为30dB,据此参数利用MATLAB生成切比雪夫滤波器,带噪信号通过陷波器后可以较好的滤除掺杂在其中的中频正弦干扰。 **7、带高斯白噪声信号的分析及滤除**

图片7

图4滤除高斯白噪声图像

如图4所示是在MATLAB软件中画出原始信号的时域波形和频谱图,并且画出加入以及去除高斯白噪声信号后的时域波形和频谱图。 原始信号中加入高斯白噪声,它的瞬时值服从高斯分布,而它的功率谱密度又是均匀分布的,遂采用小波去噪算法:

** 1.小波分解与重构去噪:**

1)首先对含噪声信号f(x)进行小波分解,得到小波变换之后的逼近部分cj,k 和细节部分dj,k;

2)然后取出第j 层的细节部分dj,k,根据选定的阈值δj,用下列的公式进行处理

3)最后利用逼近部分cj,k 和细节部分dj,k 利用重构算法进行重构,得到滤波后的信号。

** 2.硬阀值的处理:**

1)先把信号做小波变换,得到小波系数;

2)计算出阀值,把小波系数的绝对值与阀值进行比较,小于或等于阀值的点设为零,大于阀值的点保持不变;

3)再把处理过的小波系数进行小波变换来重构信号。

3.软阈值的处理步骤如下:

1)含噪信号进行小波分解,选择合适的小波,确定小波的分解层次M, 并对信号进行二进离散小波分解。可选用Daubichie 4 小波,可通过正确设计的QFM( 正交镜像滤波器)来实现。

2)对信号分解后的各级系数进行适当处理:对第1 到第M层的小波系数,选择一个软阈值,对每一级的小波系数进行阈值量化处理。

3)信号的重构:对量化处理后的各级小波系数进行信号的小波重构。先用db1小波对原始信号进行3层分解并提取小波系数,后分别通过硬阈值和软阈值的方式对原始信号进行处理,得到去噪后的信号。

8、伴奏与歌曲信号的分析

图片8

图5伴奏和歌曲的时域波形图以及频谱图

如图5所示,伴奏信号和歌曲信号在时域上的描述千差万别,同时也难以找出差异规律,此时频谱图为分析两者的差异提供了帮助,从图中可以发现两者的主要差异在低频段的表现,是因为人声的的频率范围主要在65-1.1KHz,从频域分析两者可以清晰明了的发现差异。

9、结论

1、本设计圆满的完成了对语音信号的读取与打开。

2、本设计也较好的完成了对语音信号的频谱分析,通过fft变换,得出了语音信号的频谱图。

3、本设计在滤波部分的做法, 先加入高频噪声,可以在频谱上发现信号在高频段上出现了一个极高的峰值,遂使用低通滤波器后,高频噪声被较好地滤掉。后又在原是信号中加入中频噪声,设计一款陷波器(带阻滤波器)滤除中频噪声。加入高斯白噪声后采用了小波去噪的方法得到较为纯净的信号。

4、本设计在最后分析了伴奏信号和歌曲信号在频域的差异性表现。语音信号处理是语音学与数字信号处理技术相结合的交叉学科,我们不讨论语音学,而是将语音当做一种特殊的信号,即一种复杂向量来看待。我们是将数字信号处理技术应用于某一实际领域,这里就是指对语音的处理。作为存储于计算机中的语音信号,其本身就是离散化了的向量,我们只需将这些离散的量提取出来,就可以对其进行处理了。在这个过程中我们用到了处理数字信号的强有力工MATLAB,通过MATLAB里几个命令函数的调用,很轻易的在实际化语音与数字信号的理论之间搭了一座桥。我们可以像给一般信号做频谱分析一样,来给语音信号做频谱分析,也可以较容易的用数字滤波器来对语音进行滤波处理。

源程序下载:Matlab代码_数字信号处理声音信号处理.rar

多功能通用定时器

发表于 2015-07-29 更新于 2019-08-27 分类于 硬件设计

多功能定时器任务书

1. 方案论证

1.1 电源

本系统采用了220V 50HZ交流电作为电源,这种设计使得电源随处可得,提高了系统的普遍适用性;

若使用专用电源或电池供电则限制了系统的应用范围。

1.2 脉冲发生器

常见的简易脉冲发生器主要有:压控振荡器件(VCO)、由数字编程器件(MCU、DSP、FPGA等)通过DAC输出脉冲信号以及由555定时器构成的多谐振荡器。

压控振荡器大多由分立式元件构成,故占用体积较大,同时因为实际参数与理论参数的误差,会导致实际效果与仿真结果相差较大的情况;

数字编程器件的参数计算相对简单,波形幅值和频率可调范围广,但是由于其价格相对昂贵,而且对工作环境要求较高,并不适用于本系统;

由555定时器组成的脉冲发生器,通过简单的计算在加上外围电路后,无需编程和烧写程序,便能使芯片稳定工作在多谐振荡状态。

1.3 延时控制电路

延时控制电路常见有:数字编程器件(MCU、DSP、FPGA等)、555定时器构成的单稳态电路、脉冲计数器构成的计时器;

数字编程器件虽然设计相对简单,容易实现精准延时,但是采用这样的做法是对系统资源的浪费,提高了设计的成本;

由555定时器构成的单稳态电路虽然结构单、性价比高,但是由于其定时时长有限,无法满足系统的最大延时时长,且因为实际电容的充放电效果并非理想状态,在长时间定时的时候精度严重下降,故放弃了这种方案;

脉冲计数器74LS192通过脉冲触发计数,工作稳定,支持加记数、减计数和异步清零,便于设置初值,价格低廉,故本设计选用4片74LS192作为系统的延时控制电路。

1.4 控制执行电路

由于后级有大功率(500W以上)的电器,而且还要进行前后级的强弱电隔离,无法用普通的三极管、光耦等器件简单连接,一来无法保证功率,另外无法彻底隔离前后级;所以采用三极管驱动继电器的方式控制大功率电器;

2. 原理及技术指标

2.1 硬件框图

多功能定时器原理图

图2-1 系统硬件框图

2.2 设计原理

通过555定时器构成多谐振荡器电路,产生周期为1min的矩形脉冲,将脉冲接在第一片74LS192上,系统上电后首先会通过复位电路自动复位到0状态,此时继电器处于断开状态,随后通过四个按键设置定时时长,按下双刀四掷开关,系统开始倒计时,第一片计数器计到十个脉冲的时候,会产生一个借位位脉冲,给下一片级联的74LS192,以此类推共四片,所以实现了最大9999min的定时设计,当时间倒计时回到0状态的时候继电器断开,后级的电器停止工作,完成本次定时控制;

另外一片555定时器用作单稳态触发电路,用来控制循环定时,调整完滑动变阻器(根据电路计算1约对应1s),其控制原理是将单稳态电路的输出作为定时器时钟信号的选通信号,以此来达到延时开启并定时关闭的功能。

2.3 技术指标

能够完成1-9999min的连续线性定时控制和循环定时控制(延时开启,定时关闭)功能,通过220vAC/10A的继电器可以满足控制功率500W的要求。

3. 单元电路设计及参数计算

3.1 电源

通过变压器降压后将10v 50HZ的交流电送入二极管桥进行全桥整流,整流后的经过大电容的滤波成为脉动的直流;为抑制后级大功率电器启动停止以及雷电等带来的共模干扰信号,在电容滤波后通过共模抑制电感抑制共模信号带来的电源污染;为使得电压波形更加平滑,在电源的中间级根据公式加入LC-型低通滤波电路,在保证电源功率的情况下稳定电压;为防止后级的因短路或过载等原因对前级电源造成损坏和污染,加入大功率二极管1N4148,单方向的隔离了前后级电源电路,抑制了后级对前级的干扰;为得到稳定的+5V直流电源,本设计采用性价比、稳定性和易用性较高的且十分成熟的LM7805芯片,避免了分立式元件构成的串联稳压电路结构复杂、调试难度大、不稳定等问题。

图片2 图3-1 电源电路

3.2 脉冲发生电路

通过555定时器产生周期为1min的矩形脉冲作为单位脉冲,其计算公式为T=(Ra+2Rb)Cln2,故该系统的参数为:Ra=88.6Kr,Rb=100Kr,C=300uf。

图片3

图3-2 由555定时器构成的多谐振荡器

3.3 延时控制电路

将每一片的74LS192的Q端引出,取反后送入两片八输入与非门,取反后送入单输入与非门,当74LS192的输出都为0的时候,最后一个与非门输出低电平,通过控制射极跟随器使得继电器关闭。

图片4

图3-3 延时控制电路

3.4 控制执行电路

此处三极管作为电子开关使用,当信号为低电平的时候三极管工作在截止区,继电器断开,用电器停止工作;当前级信号为高电平的时候三极管工作在饱和区,Ic最大,此时继电器吸和,用电器工作。

图片5

图3-4 控制执行电路

3.5 单稳态触发器电路

在本设计中,单稳态触发器用于控制延时启动,其原理是将单稳态触发器的输出端作为计数器的选通信号,当S7被按下后,电路进入暂态,经过Tw的时间后,计数器时钟信号选通,计数器开始工作,从而控制计数器的延时启动工作时间。脉冲宽度时间的计算公式Tw=1.1RC,(经计算1约对应1s)。

图片6

图3-5 单稳态触发器电路

4. 仿真

为更好的得到仿真波形图,本设计缩短了脉冲周期,展示本设计延时启动5s定时控制20min。在示波器中可以发现,当单稳态电路输出为暂稳态时,计数器不工作,当输出为稳态时,计数器开始工作,当计数器十个脉冲来临后,继电器关闭,并且计数器停止运行(信号锁住)。

图片7 图4-1 仿真波形图 图片8 图4-2 系统仿真图

5. 设计小结

通过此次课程设计,加深了对电源电路和计数器以及门电路的认识,在设计的刚开始总是看不到波形,后来通过设置仿真步长解决了这个问题,后来曾有一段时间思路错误,试图用八片74LS160、十六片同或门、十六个非门、八位数码管来构成,才发现这种做法十分不可取,不仅电路体积大而且成本昂贵,后来改用了支持减计数模式的74LS192芯片,纠正了思路,近一个星期的课程设计让我更加相信“工程无小事,事出必有因”这句话,每一次出现的问题只要静下心来认真查找错误和积极的通过搜索引擎搜索问题基本没有解决不了的问题,同时还发现,头脑清醒是做好课程设计的根本要素,充足的睡眠和良好的饮食是十分必要的。

6. 参考文献

[1]童诗白,华成英.模拟电子技术基础[M].第四版.高等教育出版社.2006,5. [2]阎石.数字电子技术基础[M].第5版.北京:高等教育出版社.2006.5 [3].邱关源.电路[M].第五版.高等教育出版社.2006,5. [4]方大千,鲍俏伟.实用电子控制电路[M].北京:国防工业出版社.2003 [5]卢结成,高世忻,陈力生,田红民.电子电路实验及应用课题设计[M]合肥:中国科学技术大学出版社.2002 [6]高吉祥.电子技术基础实验与课程设计[M]第2版.北京:电子工业出版社.2005.2

Multisim仿真下载:多功能定时器.rar

基于物联网技术的智能电动车安防系统

发表于 2015-03-07 更新于 2019-08-27 分类于 MSC-8051 , TI MSP430 , 单片机 , 嵌入式

作品设计:

根据相关统计显示,在被采访的100人中,有过半数的人丢过电动车,三分之一的人丢过一辆,六分之一人丢过两辆,有三分之一的人认为电动车失窃的主要原因是窃贼手段高明,防不胜防。从这些数据上面不难看出,在我国的电动车安防领域已经出现了短板,给了偷车贼们可乘之机,而本套系统的目的就在于利用先进的物联网技术,结合精准的算法,实时、准确的将信息发送给电动车主主人,减少或杜绝电动车被盗案件的发生。同时我们还在在某市的统计数据中了解到,该市平均五天就会发生一起电动车自燃事件,如此庞大的数字让人震惊,而该系统从根源解决了电动车自燃的问题。在被控端,我们将系统分为主控芯片STC-89C52,无线通信模块HC-12,GSM通信模块SIM900A,GPS定位模块,温湿度传感器DTH-11,火焰传感器,三轴加速度计ADXL-345,后备式UPS模块,在遥控端,主要分为主控芯片MSP430-G2553,无线通信模块HC-12,声光报警模块。

发明目的:

从根本解决电动车盗窃案件的发生,同时提高了电动车的安全性能;

1.解决传统报警器的误判和噪音污染,提高了报警系统的通知效率;

2.降低由于电池不正常使用或电路老化或电池及充电器质量较差而引起的自燃事件的发生概率;

3.当盗窃事件发生后,能够通过GPS及时准确的找回电动车。

基本思路:

1.由于该系统没有采用过去传统的震动传感器,所以在锁定状态时,鞭炮声、雷电轰鸣声、汽车鸣笛声等都不会引起报警;

2.设防状态下即便是路人不小心将车碰倒或者被大风刮倒,系统会根据车体的运动曲线的变化情况,计算出车体的运动方式,从而排除干扰源大大降低误报的可能;

3.当偷车贼在实施盗窃的时候,车辆的加速度计会发生一些不规则的变化,然后结合GPS的相对位置变化,那么这样就可以判断出电动车是否被盗;

4.目前电动车电池和充电器的质量良莠不齐,再加之用户们的不合理操作和线路老化的情况,电动车自燃的情况时有发生,主要发生在充电时和高速高温行驶时,为了避免此类事情发生,我们在系统中加装了温湿度传感器和火焰传感器,无论是在行驶过时还是充电时,只要当电池温度明显升高,且环境湿度较低,就会有一个告警信息发送给控制端同时车体发出蜂鸣声,只要当火焰传感器检测到车体起火时,会立即切断电池的充放电电路,发送告警信息到主控端同时车体发出蜂鸣声;

5.由于电动车电池的价值相当于整台车价值的一半,部分偷车贼会选择偷走电池,或者选择切断电源线,断开整个系统的供电,普通的报警系统就显得捉襟见肘了,所以该系统会在电池供电失效时会自动切换到后备式UPS模式供电,并发送告警信息到主控端同时车体发出蜂鸣声,有效防止了电池被盗和电源被切断而无法报警的情况的发生;

6.即使在戒备如此森严的安防系统保护下,可能还无法完全杜绝电动车被盗,比如主控端电池电量低,主控端在身边等等,那么电动车被盗后,我们可以通过车上自带的GSM通信模块,用事先设置好的手机给被控端发送一条指令短信,很快被控端就会发送当前的位置信息到主人的手机上,为警方破案提供了强有力的破案帮助。

创新点:

1.在杜绝了噪音污染的同时,还保证了报警信号的送达效率;

 2.杜绝了因鞭炮等其他环境因素引起报警误判的可能;

 3.杜绝了由电路老化,电池质量差,使用方法不正常等造成的电动车自燃事件;

 4.具有丢车找回功能,给警方提供了有力的证据。

技术关键:

1.准确、及时的测量电池的温度及周围湿度;

 2.准确根据三轴加速度计判断车体的运动情况,分辨出电动车被盗时和外力致使倒在地上的不同运动状态;

 3.设计主控端主控芯片MSP430以及其他器件(OLED显示器、无线数传等)的低功耗设计;

 4.通过GSM网络进行短信指令控制,准确无误的将GPS定位信息发送给主人;

 5.良好的人机交互界面,简洁易懂的图形化操作。

使用说明:

1.按下遥控器的锁定按键,车体会发出“滴滴”的声音以示接收到信息,系统进入报警状态,同时OLED显示器上面出现“锁定的标识”,一旦电池温度、车体姿态、蓄电池、车体位置信息、火焰发生较大的变化,遥控端会发出蜂鸣器报警提示,并显示出错误的类型,方便用户进行相应的处理;

 2.按下遥控器的开锁按键,车体会发出“滴滴”的声音以示接收到信息,系统进入普通状态,同时OLED显示器上面出现“开锁”的标识,但是,与此同时,一旦电池温度、蓄电池、火焰发生较大的变化,遥控端依旧会发出蜂鸣器报警提示,并显示出错误的类型,方便用户进行相应的处理;

 3.当发生盗窃后,用户可以通过提前设置好的关系号码发送一条指令短信到电动车的接收端,然后立即会有一条定位短信发送给用户,给警方提供了准确具体的定位数据。

应用前景:

该套系统的研制成功,将意味着打破传统的电动车安防理念,彻底取代传统的电动车安防系统,降低电动车被盗案件的发生,提高电动车丢失后的找回率,同时还可以应用到汽车及其他的贵重物品的安防监管上,让盗贼彻底无路可走,有助于净化社会风气,降低犯罪率。 在未来物联网如日中天的社会里,该套安防系统及其安防理念也必将得到更多的关注,也极有可能应用到其他更广阔的安防领域。

项目简介:

从根本解决电动车盗窃案件的发生,同时提高了电动车的安全性能;

1.解决传统报警器的误判和噪音污染,提高了报警系统的通知效率;

2.降低由于电池不正常使用或电路老化或电池及充电器质量较差而引起的自燃事件的发生概率;

3.当盗窃事件发生后,能够通过GPS及时准确的找回。

项目创新点:

  1.杜绝了噪音污染的同时,保证了报警信号的送达效率;

   2.杜绝了因鞭炮、儿童误碰等其他环境因素引起报警误判的可能;

   3.杜绝了由电路老化,电池质量差,使用方法不正常等造成的电动车自燃事件;

   4.具有丢车查找功能,给警方提供了有力的证据。

▼来一波内部构造图。左侧为GSM模块,右侧为电源管理系统,主要负责备用电池充放电和主副电池切换。

IMG_20150111_213541 IMG_20150111_213549IMG_20150111_213531

▼中间为主机的主控单元,主要负责姿态检测和数据收发,绿色模块为ADXL-345三轴加速度计

IMG_20150112_153338 IMG_20150112_153344 IMG_20150112_153350

▼右侧蓝色小模块为紫外火焰传感器,检测电动车线路或电瓶起火。

IMG_20150112_153358 IMG_20150112_153404

▼左侧为主机,两个天线分别为GSM和GPS通讯服务,右侧的为用户机即遥控器,屏幕上指示温度、电池、车体姿态及地理位置是否正常,下方按键为多功能按键,长按解锁,短按为锁定/唤醒屏幕,内置锂电池。

QQ截图 20150328144037 - 马赛克版本

▼主人手机端短信界面 ![](http://oarap.org/wp-content/uploads/2015/03/car_gps_gsm_arming_system_sms_1-576x1024.jpg) ![](http://oarap.org/wp-content/uploads/2015/03/car_gps_gsm_arming_system_sms_2-576x1024.jpg)

▼打印了一百份的宣传单,本以为是观众投票的形式,还特意做成了可折叠小册子的形式,结果是评委老师点评,只拿走了一份\[笑哭\],现在来看还是一份很认真的设计(尤其是封皮上面的三个扁平化ICON图标),尽管它十分的丑陋。

A4第四版 (可调整)

▼精心准备的PPT,然而根本没给答辩的机会。。。以下为PPT节选【技术篇】。

幻灯片1幻灯片2幻灯片3幻灯片4幻灯片5幻灯片6幻灯片8幻灯片9幻灯片7


感悟:
本来做这个作品的初衷是因为家里的箱货车每天晚上需要使用电热炉加热(北方的冬天很冷的),处于对安全的考虑我想给父亲做一个可以遥控电热炉的设备,支持定时开关机,支持火焰和高温报警,最好是能使用PID算法使车内温度尽量保持恒温,这样即保证了车内的安全,也不用晚上出去开关电热炉了,而且温度可以实时传回到室内,便于查看。后来因为比赛直接改了方向,做起了现在这个。

到了后期也意识到了作品的一些缺点:

1.成本控制的不够低,很多器件的选型不是十分的合适,比如功耗、工作温度等性能没有充分考虑。

2.系统硬件过于复杂,不适合在高震动的车载环境。

3.迫于对互联网、服务器、安卓应用等知识的了解不足,故没有真正的将这个物联网连接到因特网、通过手机APP或网页方式进行交互。但同时也面临一些安全问题,当十分敏感的地理位置、行车轨迹等信息经过公网传输,势必会引起有心人的注意。

后记:
今年冬天觉得晚上开关电热炉十分不方便,心里有萌生做一个“基于STM32的PID温度控制系统”,主要功能有:温度检测控制,主机信息通过wifi发送到家中的局域网,然后开发一个app,当前局域网下的所有手机都可以使用该app查看车内温度,控制主机的工作状态,这样没有多余的客户端,只要安装上app,局域网下的手机都是客户端/遥控端,而且便于后期的界面升级。

 源代码不打算发了,写的特别臃肿,没有模块化编程,而且没有流程图,读起来也很吃力。如果需要请联系admin\[at\]oarap.org

基于MSP430G2553的全自动凸透镜焦距测量系统

发表于 2014-10-01 更新于 2019-08-27 分类于 TI MSP430 , 单片机 , 嵌入式
本设计以MSP430G2553作为主控芯片,负责运动机构的启停、光强检测、位置检测。实现了凸透镜(组)的焦距自动测量功能。

靓照一张:![QQ截图20160229211951](http://oarap.org/wp-content/uploads/2016/02/QQ截图20160229211951.jpg)

将1W的LED光源放置在足够远处既可以近似的模拟平行光源,同时将凸透镜、光线传感器和光源中心置于同一直线上,由于穿过凸透镜的光是一定的,但是和凸透镜相隔不同距离的时候所呈光斑的大小是不一样的,同时我们经过研究发现,只有光敏器件处于焦点处时在单位面积上的光强度是最大的,那么根据这种特性,令主控芯片MSP430G2553通过PWM来控制直流电机(L298N驱动)的转动进而调整光敏传感器到凸透镜的距离,并且实时监测光敏传感器经过放大后的电压信号采集到单片机内部,当光敏传感器电压信号第一次取到极值的时候,控制直流电机低速反向运动,第二次出现极值的时候,再次改变直流电机的方向并降低速度,当第三次出现极值的时候停止电机工作,此位置即为凸透镜的焦点所在,开启超声波测距模块进行测量,并将数据显示在LCD12864上面,至此完成一次测量。

QQ拼音截图未命名

DSC_0106

整机系统及工作台。

QQ拼音截图 未命名

霸气的封箱!

QQ拼音截图未命 名

很拉风的箱子,一路上吸引了不少目光~QQ拼 音截图未命名

源码下载链接:源码_基于MSP430G2553的全自动焦距测量系统.rar

基于树莓派的私有云+网络监控服务器

发表于 2014-09-07 更新于 2019-08-27 分类于 互联网 , 开源硬件 , 树莓派

烹饪一道树莓派大餐—-私有云+网络监控二合一服务器

在这个漫天飞“云”的时代,谁不想拥有一块属于自己的私有云,可是,当大家看到私有云服务器的价格也都失去了兴趣,身为学生的笔者,利用强大的树莓派,低成本打造了集网络监控、家庭NAS于一身的“智汇云”系统。

原料:

  • 树莓派 * 1
  • USB摄像头(最好是LINUX免驱) * 1
  • 硬盘(并口串口头可以) * 1
  • 路由器(12V或5V) * 1
  • 易驱线(并口/串口转USB) * 1
  • 网线 * 1
  • 电脑ATX电源(非必须) * 1
  • 对技术狂热的心 * 1

炒:改装ATX电源

STEP1:

找一个旧电脑上面的ATX电源,在开工之前我们有必要了解开关电源引脚的定义,如图1。可能有的童鞋会问为什么一定要用ATX电源,笔者在这里和大家说明一下,本系统并非一定要有ATX电源,只要能给树莓派、硬盘、路由器等设备提供足够的电流即可,之所以这样做,一方面考虑系统以后有更好的扩展性,另一方面电源线变少了,看起来也更加整洁(笔者有轻微强迫症和完美主义)。

STEP2:

把多余的线用电烙铁拆下,引出下面几根线来,黑色 GND,红色 +5V,绿色 PS-ON,灰色 PW-OK,紫色 5VSB(可以留着以后用),还有一个就是硬盘的电源线(注意硬盘的电源接口,如果电源上没有串口硬盘的电源接口,恰好您用的又是串口硬盘,那么就会用到转接线了),如图2,

其他的线就可以拆下来了。经过简单改造便成了我们“智汇云”系统的电源了。

STEP3:

更换螺丝,把开关电源的两个对角的螺丝换成比较长的,这样做不仅固定了电源而且拆卸也不会太麻烦,如图3。

蒸:整机组装

STEP1:

树莓派没有串口和并口硬盘的接口,那么就要借助易驱线打通硬盘和树莓派,如图4。

STEP2:

感谢学校的大力支持,提供了这么好的“机箱”,首先在上面打好孔,依次固定好树莓派,硬盘,电源,并连好各类数据线和电源线,(网线一端连接树莓派,另一端连接路由器的LAN口)如图5、图6。

系统电源的连线图,(图6右下角,如果路由器是5V供电,请把电源的路由器单元更改为5V输出)开关控制整个系统的供电,5VSB不受开关的控制,只要电源连接上市电,就会产生稳定的5V。

给大家来一张全景预览,如图。

煮:**配置服务器的周边设备**

STEP1:

把硬盘在电脑上格式化成NTFS格式,这会比在树莓派上格式化快很多。

STEP2:

给树莓派分配静态的IP地址:系统上电,电脑连接路由器,有线或无线均可,并进入后台管理界面,查看客户端列表,找到树莓派,并复制其网卡的MAC地址,在“静态地址分配”这一栏点击“添加条目”,输入树莓派网卡的MAC和你想设定的IP地址,重启路由器,如图

STEP3:

在PC端用SSH软件(如PuTTy)远程登录树莓派,默认用户名pi、密码raspberry。如图。

图片9

STEP4:

登陆之后,运行sudo fdisk -l,然后会显示已挂载的硬盘的情况,如图7。

/dev/mmc是树莓派系统的分区,mmc指的是SD卡。/dev/sda就是我们插上的80GB硬盘了。

STEP5:

安装ntfs-3g模块,于是我们就能读写NTFS格式的硬盘了:

apt-get install ntfs-3g

STEP6:

创建目录,以这个目录作为挂载点挂载硬盘。

mkdir /media/software mkdir /media/materialmount -t auto /dev/sda2 /media/softwaremount -t auto /dev/sda5 /media/material

蒸:搭建基于SAMBA的文件服务器

STEP1:

运行以下命令安装SAMBA

sudo apt-get install samba sudo apt-get install samba-common-bin

STEP2:

备份并更改SAMBA设置

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak sudo nano /etc/samba/smb.conf

行首的#表示这一行是注释,也就是说这一行的配置不会生效。首先来启动用户安全,按下CTRL-W然后输入”security”,来找到相关的选项。去掉“security = user”这一行前面的注释符号,按CTRL+V使光标移动到文本末尾,添加网络共享,数目取决于自己的需求。格式如下:

[Cloud] //设置分享的目录的名称 comment = Test share path = /media/ valid users = @users force group = users create mask = 0660 directory mask = 0771 read only = no

如图图片11

完成编辑之后,按CTRL+X,然后按y退出并保存编辑。

把pi这个用户添加到SAMBA并重启SAMBA服务:

sudo smbpasswd -a pi sudo service samba restart

STEP3:

测试网络存储功能,在计算机的上方地址栏输入树莓派的地址(上面设置过):

\\192.168.1.2

进入了树莓派的文件服务器界面,或点击网络找到树莓派,首次登录可能需要身份认证,默认用户名pi,密码raspberry,如图8。

STEP4:

不过不要高兴太早,如果重启了树莓派,你会发现原来挂载的硬盘不见了,那么就得重新手动挂载,不过,有了autofs就没问题了。

sudo apt-get install autofs sudo nano /etc/auto.master

在auto.master下面加入一行:

/media/ /etc/auto.ext-usb –timeout=10,defaults,user,exec,uid=1000

这样即便在树莓派重启过后也不会破坏配置了,如图

图片13 STEP5:

尽管树莓派的功耗极低,但是如果硬盘一直转的话不仅费电而且有损硬盘寿命,那么我们就利用hdparm这款软件让硬盘在空载的时候自动休眠,在有数据读写的时候自动恢复活跃状态。

首先检查是否已经安装hdparm:

sudo # hdparm -V

如果提示下面这样的信息,说明已安装成功安装。如图

图片14

如果不是如上结果请运行以下命令来安装hdparm:

sudo emerge hdparm

运行后再次检查hdparm,若未安装重复以上步骤。

进入系统初始化目录,创建硬盘休眠脚本:

cd /etc/init.d sudo nano hdparm.sh

在脚本中按如下格式写入,设置超时值使硬盘进入睡眠模式(XXX代表驱动器名称,num值(不含方括号)表示驱动器决定在关闭主轴电机以节约能耗之前等待多长时间(没有磁盘操作),值0表示"关",值1到240被指定为5秒的倍数,也就是超时可以从5秒到20分钟,值241到251指定30分钟的1到11倍,也就是超时可以从30分钟到5.5个小时,值252表示超时21分钟,253设置一个销售商定义的超时,255表示21分15秒。):

hdparm -S[num] /dev/XXX

如图,设置成10分钟无动作硬盘自动休眠。

图片15

为hdparm.sh设置可执行权限,并把脚本加入启动清单:

sudo chmod 755 /etc/init.d/hdparm.sh sudo update-rc.d hdparm(.sh) defaults

可能会显示警告,忽略即可,并重新启动树莓派:

sudo shutdown -r now

炖:搭建网络监控服务器

STEP1:

插好USB摄像头,运行如下命令查看树莓派当前已连接设备:

ls /dev

如图9。

图片16

video0就是摄像头在LINUX下的默认名称,如果没有显示的话,说明可能是LINUX下没有驱动,建议换几个摄像头试试。

STEP2:

访问Yeelink,注册新账户并登陆,点击右上角的用户中心,可以得到API-KEY并复制,如图10。

图片17

在用户中心增加一个设备, 再为之增加一个图像传感器,添加完成后,在用户中心的设备管理中,找到设备ID并记录下来,同时记录传但其ID,如图11。

图片18

STEP2:

安装和配置安装图片抓取软件fswebcam:

sudo apt-get install fswebcam

在/home/pi下创建yeelink.sh并编辑:

sudo nano yeelink.sh

写入如下内容并保存:

sudo fswebcam -d /dev/video0 -r 320x240 –bottom-banner –title “RaspberryPi @ Yeelink” –no-timestamp /home/pi/yeelink.jpg curl –request POST –data-binary @”/home/pi/yeelink.jpg” –header “U-ApiKey: [API-KEY]“http://api.yeelink.net/v1.1/device/\[device\_id\]/sensor/\[sensor\_id\]/photos

蓝色部分替换为自己的API-KEY,红色部分替换为自己的设备ID,绿色部分替换为传感器ID。

STEP3:

为yelink.sh增加可执行权限:

sudo chmod +x yeelink.sh

并设置拍照上传的时间间隔:

crontab -e

在最下面的一行加入如下内容, num值表示让树莓派隔多少分钟运行一次脚本(不含方括号),保存退出.

*/[num] * * * * /home/pi/yeelink.sh

看一下我们网络监控器的效果吧,如图

图片19

我的监控服务器查看地址http://www.yeelink.net/devices/12126

如果没有收到效果,官网有提供开发文档,大家可以仔细研究,肯定可以解决问题的。

至此,我们的大餐也就出炉了,抓紧享用吧!

基于8051单片机的人体红外及烟雾检测报警系统

发表于 2014-03-01 更新于 2019-08-27 分类于 MSC-8051 , 单片机
由于比较匆忙,只剩下几张照片和源代码(其实是实在没什么可以说的,功能太简单了)。

这个是我自学单片机的第一个大作业,也是走进电子世界大门的第一步,虽然它功能不多,系统简单,却是我初心的起点。   ![](https://bookshiyi.oss-cn-qingdao.aliyuncs.com/photo/2014/03/89c51_MQ2_ir_buzz_1.jpg-w800_wm)![](https://bookshiyi.oss-cn-qingdao.aliyuncs.com/photo/2014/03/89c51_MQ2_ir_buzz_2.jpg-w800_wm)

本来是计划做一个移动气象监测车,由于关键的无线传输部分(NRF24L01)的通信协议没有调通,又到了比赛提交作品的deadline,所以只能放弃监测车,改为人体红外和可燃气体检测报警系统,其实说来比较简单:系统USB母口为+5V输入,旁边的插针支持+5V~+8V供电输入(使用LM7805稳压),两个传感器:可燃气体传感器(MQ-2)人体红外传感器都是数字量输入,当检测到有可燃气体时系统发出声光报警(红色LED闪烁,蜂鸣器鸣叫),当检测到人体红外时系统发出声光报警(蓝色LED闪烁,蜂鸣器鸣叫)。

后来才发现,那么简单的功能用单片机去做简直是极大的浪费,完全可以使用几个三极管或这门电路实现上述功能,不仅简化了软硬件的设计,更减低了系统功耗和开发成本。

12

book诗意

19 日志
51 分类
90 标签
GitHub
0%
辽ICP备16002243号-2 © 2016 – 2019 book诗意
由 Hexo 强力驱动 v3.9.0
|
主题 – NexT.Gemini v7.3.0