本代码是基于STM32F103ZET6和编码器直流电机编写的,增量式PID控制电机转动速度的程序,并且是基于正点原子代码格式编写的,对于初学者有重要的参考研究意义。
本代码工程书写规范,带有正文,分程序块编写。
本人测试可靠可用,绝对良心。
1
能够控制云台的八个方向的转动,并且完成云台设想头的聚焦,变倍等功能
2021/9/11 13:33:31 456KB 云台控制
1
基于单片机的温控风扇的设计摘要温控风扇在现代社会中的生产以及人们的日常生活中都有广泛的应用,如工业生产中大型机械散热系统中的风扇、现在笔记本电脑上的广泛应用的智能CPU风扇等。
本文设计了基于单片机的温控风扇系统,采用单片机作为控制器,利用温度传感器DS18B20作为温度采集元件,并根据采集到的温度,通过一个达林顿反向驱动器ULN2803驱动风扇电机。
根据检测到的温度与系统设定的温度的比较实现风扇电机的自动启动和停止,并能根温度的变化自动改变风扇电机的转速,同时用LED八段数码管显示检测到的温度与设定的温度。
关键词:单片机、DS18B20、温控、风扇第一章整体方案设计1.1前言在现代社会中,风扇被广泛的应用,发挥着举足轻重的作用,如夏天人们用的散热风扇、工业生产中大型机械中的散热风扇以及现在笔记本电脑上广泛使用的智能CPU风扇等。
而随着温度控制技术的发展,为了降低风扇运转时的噪音以及节省能源等,温控风扇越来越受到重视并被广泛的应用。
在现阶段,温控风扇的设计已经有了一定的成效,可以使风扇根据环境温度的变化进行自动无级调速,当温度升高到一定时能自动启动风扇,当温度降到一定时能自动停止风扇的转动,实现智能控制。
随着单片机在各个领域的广泛应用,许多用单片机作控制的温度控制系统也应运而生,如基于单片机的温控风扇系统。
它使风扇根据环境温度的变化实现自动启停,使风扇转速随着环境温度的变化而变化,实现了风扇的智能控制。
它的设计为现代社会人们的生活以及生产带来了诸多便利,在提高人们的生活质量、生产效率的同时还能节省风扇运转所需的能量。
本文设计了由ATMEL公司的8052系列单片机AT89C52作为控制器,采用DALLAS公司的温度传感器DS18B20作为温度采集元件,并通过一个达林顿反向驱动器ULN2803驱动风扇电机的转动。
同时使系统检测到得环境温度以及系统预设的温度动态的显示在LED数码管上。
根据系统检测到得环境温度与系统预设温度的比较,实现风扇电机的自动启停以及转速的自动调节。
1.2系统整体设计本设计的整体思路是:利用温度传感器DS18B20检测环境温度并直接输出数字温度信号给单片机AT89C52进行处理,在LED数码管上显示当前环境温度值以及预设温度值。
其中预设温度值只能为整数方式,检测到的当前环境温度可精确到小数点后一位。
同时采用PWM脉宽调制方式来改变直流风扇电机的转速。
并通过两个按键改变预设温度值,一个提高预设温度,另一个降低预设温度值。
系统结构框图如下:结论本次设计的系统以单片机为控制核心,以温度传感器DS18B20检测环境温度,实现了根据环境温度变化调节不同的风扇电机转速,在一定范围能能实现转速的连续调节,LED数码管能连续稳定的显示环境温度和设置温度,并能通过两个独立按键调节不同的设置温度,从而改变环境温度与设置温度的差值,进而改变电机转速。
实现了基于单片机的温控风扇的设计。
本系统设计可推广到各种电动机的控制系统中,实现电动机的转速调节。
在生产生活中,本系统可用于简单的日常风扇的智能控制,为生活带来便利;
在工业生产中,可以改变不同的输入信号,实现对不同信号输入控制电机的转速,进而实现生产自动化,如在电力系统中可以根据不同的负荷达到不同的电压信号,再由电压信号调节不同的发电机转速,进而调节发电量,实现电力系统的自动化调节。
综上所述,该系统的设计和研究在社会生产和生活中具有重要地位。
附录2:程序代码#include#defineucharunsignedchar#defineuintunsignedintsbitDQ=P1^7;sbitkey1=P1^3;sbitkey2=P1^4;sbitdianji=P3^1;floatff;uinty3;ucharshi,ge,xiaoshu,sheding=20,gaonum,dinum;ucharcodedispcode[]={//段码0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};ucharcodetablel[]={//带小数点的段码0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};uchardispbitcode[]={//位选0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};uchardispbuf[8]={0,0,0,0,0,0,0,0};voidDe
2018/6/1 19:43:36 624KB 单片机 温度控制 风扇
1
•精准的位置控制依照输入脉冲的数量,确定轴转动的角度。
位置误差非常小(小于1/10度),且不累积。
•精确的转速步进电机的转速取决于输入电脉冲的频率,可以实现精确控制和方便调节。
因而被广泛地应用于各种运动控制领域。
•正向/反向转动,急停及锁定功能在整个速度范围内都可以实现对电机力矩和位置的有效控制,包括静力矩。
在电机锁定状态下(电机绕组中存在电流,而外部没有旋转的脉冲指令输入),仍然保持一定的力矩输出。
•低转速条件下的精准位置控制步进电机不需要借助齿轮箱的调节,就可以在非常低的转速下平稳运行,同时输出较大的力矩,避免了功率的损耗和角度位置偏差,同时降低了成本,节省了空间。
•更长的使用寿命步进电机的无电刷设计保证了电机的使用寿命很长。
步进电机的寿命通常取决于轴承。
2022/9/7 20:56:13 3.08MB 手册
1
OpenGL的一个小Demo,通过摄像机实现3D场景的漫游。
鼠标控制包括滑动鼠标进行视角转动,使用滚轮进行缩放。
键盘通过WSAD进行前后左右的挪动。
2022/9/7 14:25:20 13.94MB OpenGL 3D 漫游
1
此程序使用Qt5编写,主要是一个闹钟提示程序,用户可以使用鼠标左键或者滚轮转动转盘,指定多长时间后进行提示,比如说:你在炖一锅汤,需要文火炖40分钟,就可以把转盘拨到40刻度的位置,等到40分钟后,程序会自动详细你事先选择的音乐,以此种方式提示使用者“时间到了!”Owl只支持wav格式的音乐,没有wav格式的同学可以使用自己喜欢的格式转换工具把MP3或者其他格式的音乐转换成wav格式给大家提供一个还不错的音频格式转换工具:http://auvisoft.com/downloads.html
2022/9/6 18:11:54 270KB Qt 实用闹钟
1
任务1任务分析1.知识和目标『项目知识』基本指令(G00、G01、G02、G03)的应用;
『技能目标』轴的轮廓线车削2.任务提出车削如图1所示的轴,毛坯为¢52×100,材料为45#钢。
3.任务分析这是一个加工轴轮廓的任务,有直线和圆弧,用基本编程指令G00、G01、G02、G03可完成。
图1任务2指令讲解一、快速定位指令(G00)该指令命令刀具以点定位控制方式从当前所在点快速运动到指令给出的目标位置;
它只是快速定位,而无运动轨迹要求。
1.指令格式:G00X(U)_Z(W)_;
其中X、Z为目标点坐标,U、W为增量坐标编程方式。
2.编程并运行。
二、直线插补指令(G01)该指令命令刀具在两坐标点间以插补联动方式按指令的F进给速度作任意斜率的直线运动。
1.指令格式:G01X(U)_Z(W)_F_;
其中X、Z为目标点坐标,U、W为增量坐标编程方式;
F为切削进给速度,单位为mm∕r。
2.编程并运行。
三、圆弧插补指令(G02、G03)该指令命令刀具在XZ坐标平面内,按指定的F进给速度进行圆弧插补运动,切削出圆弧轮廓。
G02为顺时针圆弧插补指令,G03为逆时针圆弧插补指令。
1.指令格式:G02X(U)_Z(W)_I_K_F_;
或G02X(U)_Z(W)_R_F_;
G03X(U)_Z(W)_I_K_F_;
或G03X(U)_Z(W)_R_F_;
其中X、Z为圆弧终点坐标;
I、K为圆弧中心的坐标,R为圆弧半径2.顺时针圆弧与逆时针圆弧的判别方法在使用G02或G03指令之前,要正确判别刀具在加工零件时是按顺时针路径作圆弧插补运动,还是按逆时针路径作圆弧插补运动。
在X—Z平面内向Y轴的负方向看去,刀具相对工件进给的方向顺时针为G02,逆时针为G03。
b为前置刀架的情况;
加工同一段圆弧时,前置刀架的数控车床所使用的圆弧插补指令G02(G03)与后置刀架的数控车床恰好相反。
四、主轴速度控制指令(G96,G97,G50)FANUC0-T数控系统五、预备功能(G功能)预备功能由地址G和两位数字组成,又称为G功能。
G代码分为模态G代码和非模态G代码两种类型。
预备功能G代码表。
六、辅助功能(M功能)辅助功能由地址M和两位数字组成,又称为M功能。
在每个程序段内只允许指令一个M代码。
对于刀架后置的数控车床、车削中心,M03和M04所规定的主轴或旋转刀具的转向,注意:主轴(站在床头向床尾观看)及X向和Z向旋转刀具(从刀柄向刀头观看)顺时针旋转为正转,用M03指令;
逆时针旋转为反转,用M04指令。
对于主轴箱内有机械转动装置的数控车床,当需要改变主轴的转向时,必须用M05指令使主轴停转,再用M03或M04换向。
辅助功能M代码表七、S、F、T功能1.主轴功能指令(S)主轴功能指令是设定主轴转速或速度的指令,用字母S和其后面的数字表示。
单位:r∕min。
2.进给功能指令(F)进给功能指令是设定进给速度的指令,用字母F和其后面的数字表示。
在数控车削中有两种指令进给速度的模式,分为每转进给模式、每分钟进给模式;
在数控车削加工中一般采用每转进给模式,只有在用动力刀具铣削时才采用每分钟进给模式。
需要说明的一点是:在每转进给模式下,当主轴转速较低时会出现进给速度波动现象。
主轴转速越低,波动发生的越频繁。
3.刀具功能指令(T)T指令用于指定刀具号和刀具补偿号。
其指令格式有两种:T××××T×× 刀补存储器号 刀补存储器号 刀具号 刀具号 任务3程序编制一、预备工作编程原点确定在该轴右端面中心处,所用操作系统为FANAC-0i,刀架前置。
工件材料45#钢,各切削参数选用如下:主轴转速S=1000r/min;
进给速度F=0.1mm/r。
选择刀具:1号刀为90°外圆车刀,车外形。
二、程序清单00010N05T0101;N05M03S1000;N10G00X55Z5;(编程起点)N10X0;N15G01Z0.0F0.1;N20G03X30.0Z-15R15.0F0.08;(切R15的圆弧)N25GO1Z-30.0F0.12;
(切X轴切轮廓至Z-30的位置)N30G01X50.0Z-50.0;N35Z-58.0;N40G02X-72.0Z-50.0R9.0F0.08;(切R9的圆弧)N
2022/9/3 11:37:56 1.54MB 数控机床 手工编程 教案
1
设计题16:家用电扇控制实验与驱动电路设计(限1-2人)设计要求:(1)、分别用C语言和汇编语言编程完成硬件接口功能设计;
(2)、基于80x86微机接口电路控制器设计与调试;
(3)、驱动电路(主回路)设计;
(4)、控制器功能要求:设置三个功能分别为风速、类型和停止开关,LED指示灯六个,指示风速强、中、弱,类型为睡眠、自然和正常。
指标如下:a).电扇处于停转状态时,所有指示灯不亮,只有按下“风速”键时,才会响应,进入起始工作状态;
电扇在任何状态,只需按停止键,则进入停转状态。
b).处于工作状态时,有:初始状态为:风速-“弱”,类型-“正常”;
按“风速”键,其状态由“弱”®“中”®“强”®“弱”……往复循环改变,每按一下按键改变一次;
按“类型”键,其状态由“正常”®“睡眠”®“自然”®“正常”……往复循环改变;
c).风速的弱、中、强对应于电扇的转动由慢到快。
d).类型的不同选择,分别为:正常 电扇连续运转;
自然 电扇模拟自然风,即转4s,停8s;
睡眠 电扇慢转,产生轻柔的微风,运转8s,停转8s;
e).按照风速与类型的设置输出相应的控制信号。
2022/9/3 0:55:55 4.72MB 微机 风扇
1
第二十七讲三网融合装维三网融合装维本讲目录应尽量利用已有的入户暗管敷设入户光缆,对无暗管入户或入户暗管不可利用的公寓式住宅楼应尽可能通过布放波纹管方式敷设入户光缆。
对于有垂直布线桥架的已建公寓式住宅楼,在其桥架内布放的蝶形引入光缆,应绑扎保护或包扎缠绕管。
住户户内光缆原则上以钉固布放方式为主,对质量较高的住宅建筑或用户有特殊需求的住宅可采用线槽方式布放光缆。
住户户内无家庭信息箱或ONU不安装在家庭信息箱内的,可根据用户需求配置光纤面板插座。
放装阶段施工原则入户光缆敷设前应考虑建筑物的类型、环境条件和已有线缆的敷设路由,同时需要对施工的经济性、安全性以及将来维护的便捷性和用户满意度进行综合判断。
一般情况下,入户光缆敷设时的牵引力不宜超过光缆允许张力的80%;
瞬间最大牵引力不得超过光缆允许张力的100%,且主要牵引力应加在光缆的加强构件上。
敷设蝶形引入光缆的最小弯曲半径应符合:敷设过程中不应小于30mm;
固定后不应小于15mm。
应使用光缆盘携带蝶形引入光缆,并在敷设光缆时使用放缆托架,使光缆盘能自动转动,以防止光缆被缠绕。
在光缆敷设过程中,应严格注意光纤的拉伸强度
2016/11/10 2:15:22 681KB 三网融合
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡