多场景功能集成型智能写字台设计


    





    场景功集成型智写字台设计电控系统设计











    学 院:

    专 业:
    姓 名:
    指导老师:

    工业动化学院

    机械电子工程

    刘作良

    学 号:

    职 称:

    160404102554

    李琳

    讲师








    中国·珠海 二○二○年三月


    诚信承诺书

    郑重承诺:承诺呈交毕业设计场景集成型智写字台设计——电控部分设计指导教师指导独立开展研究 取成果文中引观点材料均文 序列出参考文献设计数真实


























    签名:
    日期: 年 月 日


    场景集成型智写字台设计—电控系统设计




    文介绍种智写字台电控设计方案种智写字台实现桌面高度级调节满足站姿坐姿办公求时桌面电脑隐藏桌子底节省空间时保持桌面简洁
    整电控系统包括STM32开发台24V开关电源动力单元35寸带触控LCD屏组成LCD屏挂载STM32开发台通keil代码开发台STM32编写带控制功图形操作界面需LCD屏触控动力单元外设进行控制动力单元分两部分部分桌面升降直流驱动器电动推杆组成部分桌面升降部分步进电机驱动器步进电机组成两部分受控STM32
    关键词:写字台 智化 STM32 图形操作界面 KEIL


    Multi scene integrated intelligent desk design electric control system design

    Abstract
    This paper introduces the electronic control design of a kind of intelligent desk This kind of intelligent desk can realize the stepless adjustment of the height of the desktop and meet the office requirements of standing and sittingAt the same time the desktop computer can be hidden under the table save space while keeping the desktop simple
    The entire electronic control system consists of STM32 development platform 24V switching power supply power unit and 35inch LCD screen with touch controlThe LCD screen is mounted on the STM32 development platform Through the keil code development platform a graphical operation interface with control function is written to STM32 The power unit and other peripherals can be controlled by touching on the LCD screenThe power unit is divided into two parts one part is the desktop lift which is composed of a dc driver and an electric push rod the other part is the desktop lift which is composed of a stepper motor drive and a stepper motor both of which are controlled by STM32
    Key words writing desk intelligent STM32 graphical operation interface KEIL


    目录
    1 绪 1
    11设计研究目意义 1
    12国外研究现状 1
    13智写字台发展 2
    14设计需解决问题 3
    2 场景集成型智写字台硬件设计 3
    21控制台选择 3
    22动力部件选择 4
    221桌面升降动力部件 4
    222 电脑升降动力部件 6
    23传感器选择 7
    23电源供应器选择 9
    24 机交互方式选择 10
    25整体硬件线路连接 12
    3 场景集成型智写字台软件设计 13
    31 驱动程序设计 14
    311 电动推杆驱动程序 14
    312步进电机驱动程序 15
    313 限位传感器驱动程序 17
    314 TFTLCD屏幕显示程序 18
    315 触控屏控制程序 19
    32 程序设计 20
    4 结 21
    参考文献 22
    谢辞 23
    附录 24



    1 绪
    着智时代许许产品赋予智名号越越智产品出现极方便丰富生活然作生活中必少物品——桌子直保持着传统模样生活工作中提供更便利
    传统桌子高度调节满足身高桌子高度求现健康意识提高站立式办公成桌子需求空间利率低桌面电脑隐藏时旧占空间基没集成电子配件电灯充电接口等期购买添置起较麻烦美观见设计款满足述求桌子会极便利工作生活
    11设计研究目意义
    年着生活水提高生活品达需功越越追求更加性化希达工具更加契合状态实济水提高生活水提出新求方面现智产品已走进生活中生活提供实实便利书桌作日常生活中频率极高物品传统书桌已满足新时代高求传统桌子许空间利合理利整洁设计款桌面升降电脑隐藏桌子势必行
    12国外研究现状
    目前围绕着智书桌概念设计书桌较极部分桌子基础嵌入套媒体系统
    智书桌整体致分:书桌结构材料电控系统动力系统软件结构外围外设等组成书桌结构材料方面目前绝部分智书桌传统书桌桌面样采木质材料分实木复合木前者选原木制作价格较高加工出桌面耐腐蚀硬度高复合木碎木屑压制成木板价格便宜易加工更加轻便结构方面传统桌子般四脚智书桌设计中极少四脚桌子四脚桌子易桌面升降设计没必目前数两条杆支撑书桌样节省动力单元数量节省成更加方便桌面升降衡
    电控系统方面般单片机形式51单片机STM32等单片机写入控制系统方便者控制智书桌相关部件功整体电源选择绝数选择12V24V直流电驱动样电压更加安全时满足桌面电设备正常电
    动力系统方面升降方面应液压气压电动推杆步进电机等动力单元液压传动液体作工作介质利液体压力传递动力理气压传动换工作介质已般结构复杂容易控制体积庞等原没智书桌设计目前流电动推杆步进电机驱动模式优缺点电动推杆相说较便宜里面动力源直流电机速度行程较难控制步进电机具控制速度精度高优势需外加机械结构转化直线运动相说结构会较复杂
    外设方面实目前数集成系统基础外加台灯充电接口等等外设加入极丰富智书桌应场景
    国外智书桌设计案例少价格昂贵功没抓住户需求原没量
    13智写字台发展
    认升降桌智写字台前身远古时候需长时间行走猎采摘果实长时间劳动站立发现坐臀部肌肉支撑身体会更加舒服放松发明坐具着现代生活工作方式改变坐着时间更加长样利身体健康会提高工作效率开始尝试坐站交办公升降电动桌应运生升降电动桌成种健康流行办公方式21世纪初期开始西方企业办公员采种方式办公两年国企业购买相关升降桌子
    升降桌分非动动桌升降桌三种形式非动升降桌没动力设备辅助桌面高低需花力气调节机械装置种非动升降桌价位低需电油绿色环保升降时需力调控步骤繁琐桌面太重网站售卖产品数做工结构稳较常见升降桌价格三四百元结构简陋中间通根立柱承重面接底盘桌面空间相较
    市面数动升降桌电作动力源通电电机提供量电机带动某机械装置进行桌面升降时采气动者液压装置升降桌面目前数电机机械装置进行控制样更加方便节省成动升降桌电量稳固美观调节范围操作简单般单柱双柱升降模式操作方式遥控手柄者桌面机交互系统控制动升降相非动升降说价格较昂贵国厂商般两三千元国外厂商更加昂贵
    桌升降指通升降台形式放桌面通手动方式进行升降
    2013年种智书桌美国位设计师设计出名字StirKinect苹果公司迪士尼公司工作背景桌子设计融入许高科技实功控制桌面高低者够久坐站立工作段时间书桌会桌面高度进行记忆次需桌子时动推荐佳高度时书桌许外部设备互动力蓝牙线网等
    2014年全球著名家居家居零售商宜家推出款智升降桌名字bekant相简单置钮电动机升降桌面户通钮控制桌面升降高度方便久坐工作者站立式办公选择伸缩范围12米已满足绝部分户需求
    2017年国厂商乐歌推出智电动升降桌乐歌E3款升级桌升降速度极快高达38mms低高需16秒升降程中保持着非常衡噪音极外久坐提醒功100分钟设置通蜂鸣器提醒时间户
    年国厂商围绕着体工程学设计智升降桌越越相互间竞争越越激烈功较单般带升降功坐姿方面考虑国少出现围绕着体工程学桌面体验设计智桌子目前未出现款集成动桌面升降电脑动隐藏桌子
    14设计需解决问题
    设计中需做综合机电产品设计需解决问题较控制部分需解决单片机电机线路连接程序控制问题时解决机交互控制部分动力问题需考虑选种动力电机升降保持桌面两电机速度衡电源配置问题需解决整套系统电源

















    2场景集成型智写字台硬件设计
    21控制台选择
    微电子迅猛发展越越价格低廉性强劲微处理器出现视野中围绕着单片机许厂商开发出许利学微处理器台51单片机 arduinoSTM32树莓派等等
    51系列单片机世界应广泛8位单片机取决51单片机功满足相简单控制价格非常便宜目前高校教学中AT89系列占着导位AT89系列单片机相说较简单学单片机入门首选时AT89工业测控系统中着巨市场51单片机4k bytes程序存储器(ROM)128bytes数存储器(RAM)时核8位CPU具32条IO口线111条指令部分单字节指令专寄存器21
    Arduino种编程相简单开源电子原型台中包含种Arduino硬件板编程软件ArduinoIDE相51单片机Arduino编程会更加简单ArduinoIDE编程软件已集成配置IO口库编程者需直白语句实现调初学单片机说快掌握编程方法
    树莓派英文名称Raspberry Pi外观非常巧前版中运行Linux系统现新版运行Windows树莓派基ARM微型电脑板具备USB接口支撑太网接口时连接键盘鼠标等外部输入设备时配备视频模拟信号输出接口HDMI高清视频接口基础完成电脑部分功例处理表格文字文档视频听音乐游戏等等目前树莓派已发布代产品早期产品中AB两种型号相说B型号版功更加丰富性更加强目前树莓派已发布四代产品目前新代产品树莓派4树莓派目前高校科技制作非常流行目前视化编程功软件支持树莓派编程MATLABMATLAB需安装相应支持包完成视化编程调试
    接介绍次毕业设计选STM32开发板STM32系列意法半导体专高性低成低功耗嵌入式应设计微处理器目前流产品STM32F0STM32F1STM32F3系列产品线超低功耗产品性产品等系列次STM32开发板选STM32F103ZET6款芯片款芯片核心处理器ARM CortexM3运行速度72MHz辅助外围电路实现CANI²CIrDALINSPIUARTUSARTUSB等种通信协议芯片程序存储器容量512KBRAM容量64KB
    做毕设前已买套STM32开发板节省成选择块开发板原者款开发板已完全满足设计款智写字台性求时功耗会太选STM32开发板图21

    图21 STM32开发板外观
    22动力部件选择
    221桌面升降动力部件
    动力部许选择气压液压装置选电动推杆者电机加设计机械部件推动相应部件作直线运动气动般应气缸利气压推动活塞运动实现直线控制气缸需提供压缩空气工厂中般会配备般家环境中般没配备压缩机果单独智写字台配备台压缩机成会升高截时果利压缩机加气缸体积会增加部分利美观节省空间气缸速度活塞伸缩量极难控制般气缸推动距离会两级制推者推停中间转态考虑面原次设计没气缸作动力
    液压系统较复杂五部分组成源装置辅助装置执行装置控制调节装置液体装置液压动力工业民行业应广泛特需推力机械挖掘机非常应例子中液压系统执行元件起着非常重作液体压力转化成机械通种形式获直线复运动形式运动回转运动等液压系统源装置着电动机者油动机转化液体压力总说液压系统套非常庞系统起噪声会较适室噪音求较高环境液压系统时常会液体渗出利清洁适合智写字台设计
    种方式利步进电机步进电机做直线运动添加外部机械结构丝杠滑块等等价格会稍加昂贵种方法特适合桌面升降设计面电脑升降部分步进电机继续说明
    次设计中选电动推杆作动力部件推动桌面电脑升降电动推杆般分电机转化成直线运动机构两部分市面电动推杆绝数直流电机结合推杆部分实现推杆直线运动种直流电机电动推杆噪音推力市面售卖电动推杆达1200N推力智写字台设计已足够
    综合考虑次桌面升降选两根速度24mms推力500N行程500MM电动推杆推动电压24V选24mms速度会导致桌面升太慢时速度匹配500N推力两根加起推力1000N推力满足500MM行程已满足身高群坐着办公站立式办公需求电动推杆图22示

    图22 电动推杆
    款电动推杆没控制器必须电动推杆配备控制器电动推杆直流电机需选款直流电机驱动器考虑设计难易程度选较容易控制类型转速程序控制直接利驱动器面调试旋钮控制选款PWM形式调速驱动器输入电压DC 10V30V满足电动推杆24V求功率120W额定电流3A电流4A调速范围全速595电流通驱动器时候损失直流电机驱动器图221

    图221 直流电机调速器
    222 电脑升降动力部件
    电脑升降动力选择选电动推杆电动推杆较占方适电脑升降设计里面电脑升降功升降台式机屏幕者体机电脑屏幕重量特重般10KG次采步进电机加丝杠滑块机构实现电脑屏幕升降
    步进电机种脉信号转化成线位移者角位移种电机种电机输入脉信号电机转子会转动步输入脉数越转动步数越转动步数脉频率成正步进电机时称脉电机步进电机直流电机步进电机需脉驱动需变化电压电流直流电机般予持续直流电步进电机许优点精确控制转动角位移者行走线位移带刹车功许动化设备里面常会步进电机作动力单元生产线机械手臂等等方步进电机缺点步进电机效率高工作时步进电机会发热特步进电机刹车时候电机会转动时产生抗拒外力转动扭矩时电流量基转化成热
    般步进电机电子转子组成材料般硅钢片步进电机励磁方式分永磁式磁阻式混磁式三种相数分单项相三相相等形式
    设计中采编号42BYG34401A款步进电机永磁式两相42步步进电机步走角度18度电流15A输出力矩约028N四线制外部引线黑线A+绿线A红线B+蓝线B
    方便单片机控制步进电机般会采步进电机驱动器步进电机驱动器作单片机单脉信号转化成电机需脉信号时做电源转化作次驱动器选款T6600步进驱动器款驱动器采四线脉输出实现正反转控制时通拨码开关控制细分数电流输出拨码控制图2221示步进电机驱动器外观图2222示

    (a) (b)
    图2221 步进驱动器细分数电流拨码控制

    图2221 步进电机步进驱动器
    款驱动器输入电压范围较宽9~42V24V电压时额定电流3A功率72WT6600步进驱动器接线端口12接线端口中两端口电源输入端口信号输入端脉信号输入正(PUL+)接口脉信号输入负(PUL)接口电机正反转控制正(DIR+)接口电机正反转控制负(DIR)电机脱机控制正(EN+)电机脱机控制负(EN)6信号输入控制端外输出端四端口分AA+BB+接线需步进电机接口
    23传感器选择
    电动推杆步进电机加丝杠机构电动推杆部已限制里面直流电机达行程继续转动步进电机没果继续施电压会导致电机继续输出损坏电机电脑升降机械结构电脑升降需添加限位限位两传感器
    设计中感应开关磁性开关根磁性控制开闭合开关磁铁磁性达激发开关值磁性开关会接通磁性开关处相广泛常计数限位等外磁性开关制作成接开关家门防盗门中
    磁性开关通带磁性物质进行激发磁性开关部结构外部般根灌惰性气体密封玻璃装两材质铁弹性簧片电极板目前部份磁性开关工作原理:利磁场信号进行控制种开关元件干簧外部磁时传感器电路没接通相没开关时磁性开关部工作玻璃中弹簧处接触状态外部磁场达定值会激发开关两簧片应磁性接合起电路接通外部磁性消失时两弹簧片会重新分开磁性开关会回开路状态利特性检测机械运动电路状态
    设计选SMC厂商生产DZ73型磁性开光磁性开光适5V~24V电源驱动压降3V左右单片机输入适应高电压需加入电阻配置33V输入单片机里面采两线方式果磁性开关激发电路接通时传感器指示灯会亮起

    图231 磁性开关SMC DZ73 外观

    图232 磁性开关SMC DZ73 参数图
    23电源供应器选择
    电源选择遵循电源稳定功率满足原目前绝数需直流电源机电产品会开关电源谓开光电源开光模式电源简称SMPS称交换式电源者开关变换器电源供应器较常见类型种高频化电转化装置种开关电源绝数利交流电转化成直流电中般需直流电设备电脑印机等方开关电源转化成电器需电压电流开关电源型机电产品非常优势开关电源没工频变压器体积较重量较轻重量体积般线性电源25左右开关电源效率高功耗工作时功率晶体工作开关状态时功率晶体面功耗较转化效率较高般65左右
    设计中电量器件电动推杆步进电机约占95电量设计选电源电动推杆电量计算前选电动推杆24V电源电压输出必须选24V 选电动推杆工作功率30W两推杆加起60W开关电源选择必须60W时电脑升降键盘升降选样电气规格考虑桌面升降电脑键盘升降会步进行功率时会叠加起电源供应器造成负担选60W电源
    根面计算市场价格算选输入:AC 220V 50HZ输出:三路输出电压24V电流88A功率204W电源图片图23

    图23 开关电源
    24 机交互方式选择
    设计采机交互方式控制方式键控制者屏幕触控采键控制设计方案话需添加电路键程序相屏幕触控说会简单少智桌子期修改拓展会非常麻烦需改变桌子机械结构键腾位置需外添加键电路屏幕触控程序相说较复杂期拓展修改控制系统时候需修改相应控制程序设计触控屏安装起非常方便STM32开发板专门插口需接
    设计中正点原子STM32开发板配套35英寸480*320分辨率带电阻触控屏控制TFTLCD屏幕TFTLCD薄膜晶体液晶显示器时真彩液晶显示器英文全称:Thim Film TransistorLiquid Crystal Display源矩阵液晶显示器典型代表目前研究广泛发展快应增长快显示技术彩色液晶概念提出现已50年历史世纪80年代日厂商实现量产类彩色显示技术进入更薄更快时代
    90年代TFT技术迅猛发展彩色液晶板显示器技术越越完善需求量越越TFTLCD显示技术越越成彩色显示技术流厂商户追捧中TFTLCD显示技术许优点分开性:TFTLCD做低功耗运行相CRT显示器功耗十分反射式TFTLCDCRT百分功耗非常省电体积做非常轻薄时TFTLCD方便灵活更新升级容易产品规格型号尺寸系列化品种样寿命长等特点二环保性TFTLCD基辐射没闪烁会损害者健康
    三适范围宽耐高温耐低温20摄氏度+50摄氏度温度范围正常特殊处理耐低温程度达零80摄氏度场景范围非常宽仅作手机相机笔记电脑等移动终端设备屏幕电视机电脑显示器等屏显示场景者投影仪四四制造程高度动化现代工厂里面基已实现规模动化生产产品良率达90
    TFT目前市面TNLCDSTNLCD工作原理相TFTLCD素点设置薄膜晶体非选通会太串扰相前面两种显示屏显示图质量更目前TFTLCD广泛运面显示器电视投影仪
    TFTLCD两层玻璃基板夹住液晶组成构造出行板电容器通玻璃基板TFT电容器置储存电容充电维持图片显示需电压直幅图更新液晶显示发光需肉眼必须通加入光源LCD显示需添加白色光源达显示目
    正点原子STM32配套35英寸TFTLCD驱动芯片NT35310屏幕单片机通16口控制配置TFTLCD第步:初始化STM32IO口步FSMC(变静态存储控制器)进行设置引脚数超100脚STM32F103系列芯片功作拓展外部存储理器够步异步存储器16位PC存储卡连接FSMC功相强支持PSRAMNOR FLASHNAND FLASHSRAM储存器实设计中TFTLCD做SRAM控制第二步:TFTLCD初始化正点原子STM32开发板面没单独LCD硬复位TFTLCD复位STM32硬复位接起需开发板复位键时会LCD进行硬复位TFTLCD初始化实TFTLCD控制器写入系列设置值代码较复杂专业般TFTLCD厂家提供需直接调序列第三步:通函数字符数字显示TFTLCD模块先设置坐标然写图寄存器指令写图信息进入图寄存器步骤TFTLCD素点进行设置已果显示数字者字符需次步骤达显示数字者字符目设计中会设计函数实现数字者字符显示需调改函数实现数字者字符显示
    整体述说TFTLCD整体情况TFTLCD设置较复杂需设置较读写寄存器时序设置实市面已较全TFTLCD操作函数库包括开始IO口初始化TFTLCD初始化写入相关字符等相关函数操作需软件工程中调
    介绍完交互系统显示部分接说说正点原子TFTLCD集成电阻触控屏原理相关操作目前常触控屏两种电容屏电阻屏苹果手机iPhone系列发布前市面绝数书触控屏采电阻屏电阻屏缺点必须屏幕某点施加相说较压力通压力感应判断触点位置时电阻屏缺点点触控时间输出触点位置现手机基已会出现电阻屏电阻屏稳定性价格便宜精度高抗干扰力强等特点电阻屏部分块显示屏非常契合电阻薄膜屏种层符合薄膜层硬塑料者玻璃作基层表面涂层透明电阻涂料面层硬化处理光滑塑料层表面涂层透明电阻层时间许细透明隔离点两层导电层分开手指触控屏幕时两层接通时会电阻变化X者Y两方产生信号信号传送触控屏控制器控制器根电阻数值计算出(XY)位置次基础连续侦测触控点变化模拟鼠标运作方式
    正点原子触控屏带控制芯片XPT2046XPT控制器带四根导线带AD转换器逼型12位分辨率125KHz转换速支持电压15V525VXPT2046找点原理通执行两次AD转化查出屏幕XY数值找出触控理位置外感应屏幕压力部集成温度传感器时监控屏幕温度
    时触控屏配备初始化函数调函数输出函数等种函数时需调相关函数
    25整体硬件线路连接
    需硬件选完型进行线路连接线路连接准确误工作
    设计部件组成:套STM32开发板(包含电源屏幕)块开关电源四块直流电机驱动器八块两路继电器电路板两直流电机推杆步进电机步进电机驱动器
    首先开关电源连线电源输入端家交流电火线接头零线接头线接头考虑开关电源整体功率300W左右算特高瓦数电器直径15MM芯铜线输入端需零线火线线接带线三角插座样家电网连起开光电源三路24V直流电输出四推杆需电脑升降键盘升降直流电源输出头电脑键盘电动推杆时起降样会减低两电机电源干扰电动推杆需单片机控制需先开关电源直流输出接四直流电机驱动器连接电动推杆选直流电机驱动器六8接口中两驱动直流电源输入两接口驱动输出连接电动推杆四控制停止正反转四根线四根线控制逻辑:四根线分两组全部互相接停止两组线相互交叉连接正反转直流电机驱动器控制线实现接法需继电器电路板实现全部两电机停止正反转需四两路继电器电路板继电器电路板作单片机控制电动直流电机驱动器中间载体单片机开发板5V直流电源接继电器电路板控制端单片机IO口控制桌面电机控制需两IO口IO口输出高电时候效中IO口控制升IO口控制降两IO口没输出时候继电器没动作时电动推杆属停止转态桌面升降两电动推杆需步工作公连两IO口整电动推杆系统需六IO口TFTLCD连接34PINIDC接头TFTLCD面公座开发板面母座直接插考虑集成桌子话根延长线会较节省空间美观
    次步进电机接线步进电机采阴极接法控制NPULDIR接单片机台接端外EN+端接单片机PC2口T6600驱动器特性EN+EN定电压差话时控制器输出端没输出脉会保持电压步进电机会属脱机状态转动转子轴EN+EN没电压差时候时电机会接收着单片机脉信号转动时果未接收脉信号会保持力矩步进电机转子属转动状态PUL+接单片机PC0口没输入时候成步进电机时针转动输入时成逆时针转动DIR+接入PC7端单片机输出脉信号时步进电机会转动步电源输出部分步进电机驱动器GNDVCC接开关电源24V接口输出电机部分步进电机驱动器标识应接
    限制步进电机带动丝杠滑块超出限定范围设计中采两磁性开光做限位限位采阳极方法两传感器电源输入正通1K电阻接入24V开关电源中外做限位磁性开关负端通220Ω拉电阻接开关电源24V端配置符合单片机GPIO口35V输入电压计算公式:
    R1U1(U2R2) (式251)
    24U1+U2 (式252)
    220Ω电阻端引线PC6口中磁性开关感应磁性会接通时会PC6口高电磁性信号撤磁性开关会开路PC6口会重新恢复低电限位磁性开光负端接PG5口工作原理限位样里重复桌面升降接线图251实物图请附录三

    图231 电脑升降接线图

    3 场景集成型智写字台软件设计
    STM32编程中行业基会款名Keil编程软件世界领先微处理器软件开发工具供应商KEIL公司开发功强集成编程调试体适MCU类型非常广泛ARM7ARM9CortexM核MCU程序开发调试目前keil μVision 5keil系列新版时Cortex M核佳开发工具Keil 5 兼容Keil 4Keil 3等 keil两部分组成MDK coreSoftware Packs时前开发模式界面进行升级MDK Core软件核代码包含软件运行逻辑等软件架构Software Packs需编程处理器支持包
    keil5里面编程C语言编程编程难度需C语言基础学keil5单片机编程keil5里面单片机编程项目工程形式出现许项目面工程模板说样需做编写驱动程序mainc文件编写整体函数调逻辑服务函数等等
    里讨次设计工程里面文件作工程里面帮会六文件夹:USERHARDWERESYSTEMCOREFWLIBREDEME文件夹USER文件夹里存放mainc文件夹编写main函数stm32f10x_itc中定义部分中断服务函数System_stm32f10xc定义SystemInit等 时钟初始化函数HARDWERE文件夹里面存放外部硬件驱动STM32开发板面指示灯电动推杆驱动驱动应h头文件头文件里面相关函数定义常量宏定义
    SYSTEM分组正点原子开发板提供常公代码延时函数IO口位操作串口相关函数般修改意STM32f10X系列芯片CORE分组存放keil提供官方固件库核心文件文件容般需户做修改FWLIB里面存放ST官方提供外设固件库文件头文件样c源文件应h头文件README文件存放README文文件户说明工程作方法注意事项等等
    31 驱动程序设计
    智写字台程序设计采外部设备编写独立驱动程序进行封装然main函数里面进行调种结果部分分开定程度减轻编程难度时会整程序会更清楚明白方便阅读里种外设驱动般两文件编写分c文件h文件c文件里面般编写IO口模式控制逻辑h文件般宏定义函数声明
    311 电动推杆驱动程序
    电动推杆驱动程序存放motorcmotorh文件里面桌面升降两电动推杆实行升降停止需两单片机IO口里选PB7PB8PB7输出高电PB8低电时两电动推杆升起PB7输出低电PB8高电时两电动推杆降
    选输出IO口明确逻辑进行IO口配置首先PB时钟设置设置输出频率50MHz然映射PB7 PB8口包装成初始化函数motor_Init()样函数进行调PB7PB8进行高低电设置motor_Init()初始化函数图311示

    图311 motor_Init()初始化函数
    312步进电机驱动程序
    步进电机驱动程序相直流电机控制说会较复杂点直流电机需接通电源电机间路线步进电机需频率控制
    频率发生STM32里面程序阶段两种方式第种调延时函数第二种直接调STM32里面部计时器第种方法编写脉输出时较简单需定时间予某IO口高电间隔定时间样IO口低电样便输出固定频率脉种方法会加单片机负担频繁调延时函数种方式适合调会直循环需加入语句实现单片机说繁琐稳定设计中选额第二种直接调计时器样单片机资源占少方便调干预程序
    利STM32计时器产生PWM波脉宽度调制时PWM波质脉利PWM做成脉步进电机驱动器STM328定时器TIM67产生PWM波TIM1TIM8产生7路PWM输出余产生4路PWM波样计算STM32生成30路PWM输出设计中采TIM8CH2产生PWM波配置程序需调函数放工程里面stm32f10x_timcstm32f10x_timh文件中
    设计TIM8CH2配备PWM方法:
    (1)开启TIM8时钟复功时钟配备GPIO口PC7复输出RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM8 ENABLE)TIM8进行时需复时钟需函数RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO ENABLE)时需设置PC7输出模式推挽输出
    (2)设置TIM8_CH2重映射PB5TIM8_CH2默认GPIO口GPIO口需重映射PB5里需void GPIO_PinRemapConfig(uint32_t GPIO_Remap FunctionalState NewState)函数进行重映射
    (3)TIM8进行初始化设计TIM8ARR(重新装载值)PSC(预分频数)里部分函数较列举面会图片形式展现出
    (4)设置TIM8_CH2PWM模式TIM8CH2输出需IO口输出PWM需始终TIM_CH2PWM模式库函数中PWM通道设置通函数TIM_OCxInit()进行设置x值14表示STM32中4通道设计中采通道二
    ( 5)TIM8完成设置需TIM8进行STM32中TIM8函数TIM_Cmd(TIM8 ENABLE)
    (6)修改TIM8_CCR2控制占空面步骤中已输出PWM波频率占空固定通修改TIM8_CCR2控制CH2占空

    图3121 TIM8_CH2 PWM输出配置
    完成TIM8_CH2 PWM输出初始化需编写设置输出频率占空时启动PWM输出函数命名void TIM8_Startup(u32 frequency)里设置输出PWM频率500Hz占空50程序图3122示

    图 3122 TIM8_ Startup函数
    时更加方便步进电机进行控制里编写电机带动丝杠升降停止等三函数样函数中调会非常方便代码见图3122

    图3122 升降停止函数

    313 限位传感器驱动程序
    限位传感器采磁性开关电脑升降结构里面放置两块磁铁电脑升位时触发限位磁性开关电脑降位时会触发限位磁性开关传感器驱动程序存放sensorcsensorh中传感器初始化函数命名SENSOR_Init()传感器采阳极磁性开关触发时IO口高电IO口模式设置成拉输入模式时限位IO口定PC6限位IO口定PG5IO口相关配置电动推杆直流电机配置方法差里赘述具体代码见图3131
    图3131 限位传感器初始化函数
    编写限位传感器初始化函数设计传感器输出函数输出标识符号标识传感器里设置限位传感器输出标识1位传感器标识2限位传感器没感应信号时输出标识0段程序编写程中键输出思维方式函数名称SENSOR_Scan(u8 mode1)中输入参数mode0时键支持连mode1时支持连设计中限位传感器采支持连方式详细代码见图3132

    图3132 限位传感器处理函数
    314 TFTLCD屏幕显示程序
    设计中采正点原子STM32开发板时配套35英寸分辨率480*320TFTLCD屏幕TFTLCD屏幕驱动相说较复杂里直接应开发商提供驱动程序功函数显示屏驱动函数功函数存放文件夹lcdclcdh里面两函数里面止相关驱动功函数集成画正方形圆形填充字母英文字符数字等功外设计中需中文需添加字库文件texthtextc
    添加屏幕需函数需进行屏幕显示进行设计图形操作界面设计首先整屏幕显示模块智写字台控制界面桌面升桌面降电脑升电脑升电脑降署名等六字符模块四类似键方块没收触控区域触屏信号时显示绿色接收信号时显示红色设计中函数里面调屏幕显示相关函数首先字符显示里面调void Show_Str(u16 xu16 yu16 widthu16 heightu8*stru8 sizeu8 mode)函数函数7参数xy起始坐标widthheight需显示区域str需显示字符串size 字体mode显示模式0非叠加方式1叠加方式第二需函数void LCD_Fill(u16 sxu16 syu16 exu16 eyu16 color)函数功矩形区域填充单颜色(sxsy)(exey)填充矩形角坐标区域(exsx+1)*(eysy+1)color填充颜色详细显示代码见图3141整体显示效果见图3142

    图3141 图形操作界面代码


    图3142 实物显示效果
    315 触控屏控制程序
    设计中触控屏显示屏体块35英寸电阻屏显示屏样触控屏厂商开发者提供已包装函数工程里面存放touchctouchh文件里面两文件夹里面时包含触控屏初始化函数功函数设计中屏幕触控点返回函数u8 TP_Scan(u8 tp)中参数tp坐标返回形式tp0时返回屏幕坐标等1时返回物理坐标(校准等特殊场合)电阻触控屏特性屏幕时实际触控屏幕坐标值会返回坐标值偏差时候需进行屏幕触控校正块触控屏商家时提供相关函数
    初始化触控屏需面说TP_Scan()函数编写触控屏服务程序触控屏幕某块区域时函数应该返回什值
    设计中四区域需控制模拟出四控制键触摸区域桌面升降控制区域时返回1桌面降时返回2电脑升时返回3电脑降时返回4mainc文件里面编写u8 py_get_keynum(u8 mode)函数实现面功详细代码见图315

    图315 屏幕触控返回函数
    32 程序设计
    全部编写相关服务函数编写函数函数工程必少函数控制整体程序运行逻辑终实现功
    函数里面首先会函数库文件进行引外设进行初始化然编写相关函数逻辑设计中切外设初始化完成开始显示屏未触控界面显示图3142接会进入while循环里面while循环里面switch函数操作程进行分类py_get_keynum()返回值作switch参数分5种转态5case五种转态里面控制外设动作case1时桌面升触控虚拟钮变成红色(面雷)case2时桌面降case3时电脑升外里设置步进电机限位保护限位磁性开关感应感应信号程序回进case3里面相case3效case4时电脑降case3类似设置限位保护详细代码见附录



























    4结
    设计场景功集成性智写字台实现桌面升降电脑升降功桌面升降现保持着坐姿时间长说非常益身体健康功桌面升降升高部分成站着办公高度仅缓解长时间坐姿疲劳站起办公锻炼肌群时者通桌面升降功实现佳桌子高度匹配坐姿电脑升降者需电脑时候隐藏桌子底仅节省空间时桌面起更加简洁美观
    控制台次STM32加触控显示屏模式控制方面通屏幕显示控制显示运行状态会更加直观时STM32具强功续写字台进行设计时会更加方便添加桌面灯光添加线线手机充电器接口等工作量较少需添加相应外设控制端硬件需改变STM32加显示屏控制模式市面键控制升降桌更具设计优势
    现家居产品求前相仅需功满足时需更加性化定制化桌面升降功满足桌面高度求2020年智家居持续发力年份切家居设计值更加便捷性化重新思考书桌功已未书桌仅写字办公方时房间者间房子控制信息呈现中心智桌子智家居产品进行操控设计未智书桌时代开始提供种方案体工学空间优化桌面简洁美观控制方式提供设计方案












    参考文献
    [1] 郭育青 智办公桌设计[D]深圳学2017
    [2] 陈慧琴单片机技术智家具中应发展[J]科技传播20168(18)9495
    [3] 马晓红陶毓博基电脑发展演变电脑办公桌设计研究[J]设计艺术研究20155(02)101106+114
    [4] 罗昊万红基STM32智书桌[J]数字技术应2016(11)102103+105
    [5] 意法半导体(中国)投资限公司MCU投资中心STM32中文参考手册20101
    [6] Joseph Yiu CotexM3权威指南(中文)宋岩译20080702
    [7] 正点原子STM32F1开发指南(精英版)库函数版_V11
    [8] 王成元夏加宽孙宣标现代电机控制技术[M]2机械工业出版社201403
    [9] 沈红卫STM32单片机应全案例实践[M]1机械工业出版社201403
    [10] 杜伟谭等泰冯伟靳娜维 基体健康监测智书桌设计研究[M] 甘肃科技 202001
    [11] 马晓红 基体工程学升降办公桌桌面高度研究[D]东北林业学2016
    [12] 张淑清胡永涛张立国等  嵌入式单片机STM32原理应[M]  机械工业出版社 201910
    [13] 陈隆昌刘新正阎治安  控制电机(第四版)[M]4西安电子科技学出版社 201304
    [14] 朱海种常见步进电机控制方法庶谈[J]科技济市场2013(12)114115
    [15] 廖建尚郑建红杜恒 基STM32嵌入式接口传感器应开发[M] 电子工业出版社 201810
    [16] 欧启标 STM32程序设计案例教程[M]电子工业出版社 201906
    [17] 牛慧佳基单片机步进电机控制系统设计研究[J]数字技术应201836(07)1112









    谢 辞

    时光飞逝转眼间四年学美生活已结束里非常感谢指导老师李琳毕业设计段时间指导设计进疫情期间老师着扎实专业技术极强责心问题问必答时提供非常建议老师宝贵建议鞭策毕业设计利进行时感谢队友庄礼明学整设计程中礼明学做结构设计部分设计程中礼明学非常积极沟通时电控方面提供非常支持想相处四年学表示感谢整毕设程中通线种形式进行讨相关支持帮助毕设遇困难时候然昂首前文完成际谨家表示真诚谢意
    编写文时受许文献启发感谢引文献作者启迪完成次毕设百忙中抽出时间评审文评审老师表示诚挚感谢忠心祝福祝老师身体健康万事意














    附录
    附录1
    电路接线图









    附录2
    main函数程序
    #include sysh
    #include delayh
    #include usarth
    #include ledh
    #include lcdh
    #include keyh
    #include usmarth
    #include malloch
    #include sdio_sdcardh
    #include w25qxxh
    #include ffh
    #include exfunsh
    #include texth
    #include touchh
    #include motorh
    #include driverh
    #include sensorh

    屏幕触控返回函数
    mode:0支持连1支持连
    u8 py_get_keynum(u8 mode)

    { static u8 key_up1未触控标志开标志
    if(mode)key_up1 支持连
    tp_devscan(0)
    if(tp_devsta&TP_PRES_DOWN)
    {
    if((tp_devx[0]>5)&&(tp_devx[0]<150)&&(tp_devy[0]<170)&&(tp_devy[0]>90))
    桌面升区域时返回1
    {key_up0 return 1}
    else if(tp_devx[0]>170&&tp_devx[0]<315&&tp_devy[0]<170&&tp_devy[0]>90) 桌面降区域时返回2
    {key_up0 return 2}
    else if(tp_devx[0]>5&&tp_devx[0]<150&&tp_devy[0]<260&&tp_devy[0]>180)
    桌电脑升区域时返回3
    {key_up0 return 3}
    else if(tp_devx[0]>170&&tp_devx[0]<315&&tp_devy[0]<260&&tp_devy[0]>180)
    电脑降区域时返回4
    {key_up0 return 4}
    else return 0未时返回0
    }
    }

    void 图形操作界面_TEXT()
    {
    Show_Str(3012012024桌面升241)
    Show_Str(19012012024桌面降241)
    Show_Str(3021012024电脑升241)
    Show_Str(19021012024电脑降241)
    }
    int main(void)
    {
    u32 fontcnt
    u8 ij
    u8 fontx[2]gbk码
    u8 keyt
    u8 key_num
    delay_init() 延时函数初始化
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2)设置中断优先级分组组2:2位抢占优先级2位响应优先级
    uart_init(115200) 串口初始化115200
    usmart_devinit(72) 初始化USMART
    LED_Init() 初始化LED连接硬件接口
    KEY_Init() 初始化键
    LCD_Init() 初始化LCD
    W25QXX_Init() 初始化W25Q128
    tp_devinit() 初始化触摸屏
    my_mem_init(SRAMIN) 初始化部存池
    exfuns_init() fatfs相关变量申请存
    f_mount(fs[0]01) 挂载SD卡
    f_mount(fs[1]11) 挂载FLASH
    motor_Init()
    Driver_Init()
    TIM8_OPM_RCR_Init(999721)
    SENSOR_Init()
    while(font_init()) 检查字库
    {
    LCD_Clear(WHITE) 清屏
    POINT_COLORRED 设置字体红色
    LCD_ShowString(30502001616ELITE STM32F103 ^_^)
    while(SD_Init()) 检测SD卡
    {
    LCD_ShowString(30702001616SD Card Failed)
    delay_ms(200)
    LCD_Fill(3070200+3070+16WHITE)
    delay_ms(200)
    }
    LCD_ShowString(30702001616SD Card OK)
    LCD_ShowString(30902001616Font Updating)
    keyupdate_font(20110160)更新字库

    while(key)更新失败
    {
    LCD_ShowString(301102001616Font Update Failed)
    delay_ms(200)
    LCD_Fill(20110200+20110+16WHITE)
    delay_ms(200)
    }
    LCD_ShowString(301102001616Font Update Success )
    delay_ms(1500)
    }
    POINT_COLORBLACK
    Show_Str(504025024智写字台控制界面240)
    LCD_Fill(590150170GREEN)
    Show_Str(3012012024桌面升241)
    LCD_Fill(17090315170GREEN)
    Show_Str(19012012024桌面降241)
    LCD_Fill(5180150260GREEN)
    Show_Str(3021012024电脑升241)
    LCD_Fill(170180315260GREEN)
    Show_Str(19021012024电脑降241)
    POINT_COLORBLUE
    Show_Str(5037033016北京理工学珠海学院毕设作品160)
    Show_Str(10039020016作者:刘作良160)
    while(1)
    {
    u8 sensor_numSENSOR_Scan(1)
    static u8 put
    py_get_keynum(0)
    key_numpy_get_keynum(0)
    判断极限sensor否触发触发限位操控电脑升效触发限位操控电脑降效
    if(sensor_num1&&key_num3)
    key_num0
    if(sensor_num2&&key_num4)
    key_num0
    if(key_numput)
    if功判断键否更新更新进行面操作样避免直着键时屏幕闪烁
    {
    putkey_num
    switch(key_num)
    {
    case 1推杆升桌面升
    LCD_Fill(590150170RED)
    LCD_Fill(17090315170GREEN)
    LCD_Fill(5180150260GREEN)
    LCD_Fill(170180315260GREEN)
    图形操作界面_TEXT()
    motor_up1
    motor_down0
    printf(sensor is d \r\n\r\nSENSOR_Scan(1))
    printf(sensor1 is d SENSOR_UP)
    printf(sensor2 is d SENSOR_DOWN)
    break
    case 2推杆降桌面降
    LCD_Fill(590150170GREEN)
    LCD_Fill(17090315170RED)
    LCD_Fill(5180150260GREEN)
    LCD_Fill(170180315260GREEN)
    图形操作界面_TEXT()
    motor_up0
    motor_down1break
    case 3步进电机正转电脑升
    LCD_Fill(590150170GREEN)
    LCD_Fill(17090315170GREEN)
    LCD_Fill(5180150260RED)
    LCD_Fill(170180315260GREEN)
    图形操作界面_TEXT()
    Driver_up(500)break
    case 4步进电机反转电脑降
    LCD_Fill(590150170GREEN)
    LCD_Fill(17090315170GREEN)
    LCD_Fill(5180150260GREEN)
    LCD_Fill(170180315260RED)
    图形操作界面_TEXT()
    Driver_down(500)break
    case 0触屏放回初始状态
    LCD_Fill(590150170GREEN)
    LCD_Fill(17090315170GREEN)
    LCD_Fill(5180150260GREEN)
    LCD_Fill(170180315260GREEN)
    图形操作界面_TEXT()
    motor_up0
    motor_down0
    Driver_stop()break
    }
    }
    }



























    附录3
    实物图
    电控板正面图:










    电控板背面图:
















    整体实物图:






    附录4
    场景功集成型智写字台BOM


    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 5 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    多场景功能集成型智能写字台

    多场景功能集成型智能写字台学 院:专 业:姓 名:指导老师:工业自动化学院机械电子工程庄礼明学 号:职 称:160404102626李琳讲师中国·珠海二○二零年四...

    2年前   
    622    0

    角色与场景设计

     角色与场景设计 一、课程介绍 角色结构与比例 写实的感染力 角色的组合关系 色彩设定 角度与透视 动漫场景分析 动漫场景创作 角色骨骼与肌肉 角色头部设计 角色...

    5年前   
    2457    0

    金属成型设计习题2

    上次课复习:第五章内容本次课题(或教材章节题目): 习题教学要求: 重 点: 难 点: 教学手段及教具:讲授,板书讲授内容及时间分配:习题(90mins)课后作业参考资料见附录1第...

    3年前   
    804    0

    多功能智能轮椅设计-运动控制系统的设计与实现

     多功能智能轮椅设计—运动控制系统的设计与实现多功能智能轮椅设计-运动控制系统的设计与实现摘 要在现如今智能化高速发展的时代,智能、科技已然成为时代的主题之一,智能产品也被越来越多运用到各行...

    3年前   
    619    0

    多功能智能播放器—电路设计

    本设计的多功能智能播放器是拥有多种控制方式的播放器,分别是按键控制、语音控制以及手机APP控制。本文主要介绍多功能智能播放器所用到的各个模块的电路设计。

    3年前   
    625    0

    多功能病床设计

    多功能病床设计 摘要 随着我国社会人口结构老龄化趋势日趋明显,对医护护理行业有了更高的要求。医用病床的质量可靠性以及功能多样化,大大方便了护理人员的操作,提升了护理行业的整体服务水平,取得...

    5年前   
    1573    0

    08婚礼场景布置设计

    八、婚礼场景布置设计整个婚礼色调以白色为主色调,突出简洁的风尚。婚礼现场分为迎宾休息区与仪式宴会区。1.迎宾区布置一楼电梯口指引牌:精致花艺路引一个二楼楼梯口:大型花艺设计效果二楼到三楼梯:艺...

    7个月前   
    143    0

    智能安防系统设计

     智能安防系统的设 Design of intelligent security system 内容摘要 ...

    2年前   
    586    0

    智能化设计合同

    智能化设计合同  甲方:               乙方:  一:共同协议:  1.乙方按甲方的要求,承揽甲方闭路电视监控工程的安装调试,并保证该系统使用性能符合甲方的要求。  2.产品的单...

    9年前   
    563    0

    作品集设计

    作品集设计初步分五部分设计:1、 扉页:题目《这片星空,这片爱——洋河实小华人少年作文比赛作品集》,配精美的图2、 序言:《幸福的窗口》3、 目录:按作品等次排列,作品序号将所有作品合起来排列...

    4年前   
    1111    0

    基于多agent的制造执行系统的功能模块设计

    基于多Agent的制造执行系统的功能模块设计摘要离散型制造企业其生产产品种类多、结构复杂、数据信息量大,生产过程包含众多变化和不确定因素,这些使得企业的过程控制复杂、多变。基于多Agent的制...

    3周前   
    73    0

    基于8051的智能小车设计课程设计

    测控电路课程设计题目名称: 智能循迹小车 专业班级: ...

    2年前   
    583    0

    客厅空调智能开关设计

    客厅空调智能开关设计 客厅空调智能开关设计摘 要本设计利用红外遥感发送/接收器建立两个单片机之间的通信桥梁,主机模拟遥控,从机模拟空调系统。整个系统利用红外编码进行无线操控空调,实时利...

    2年前   
    466    0

    《对人工智能的思考》教学设计

    课题对人工智能的思考建议课时1课时课型新知学习课(√)原理探究课()综合应用课()其它 () 教学背景分析人工智能技术的发展给我们的日常生活提供了许多便利,也为人类的进步创造了条件...

    2年前   
    847    0

    基于Android智能风扇的设计

    由于科技越来越发达,智能硬件也使用越来越多,基于蓝牙的技术开发以及应用也是快速的发展。其使用在Android系统和Windows系统等平台上都可以使用蓝牙无线模块。可以实现了主蓝牙设备和从设备它...

    3年前   
    971    0

    超市智能电子秤设计

    超市智能电子秤设计超市智能电子秤设计摘 要随着社会科学的不断发展,我国电子产业正在蓬勃的发展,单片机的各种应用已经走进了千家万户,本设计的目的在于利用单片机技术,实现低成本高性能的智能电子秤...

    3年前   
    464    0

    联想公司智能社区设计方案

    智能社区网络技术白皮书 1、智能社区概念及发展: 随着计算机技术,现代通信技术和自动控制技术的迅速发展,智能化建筑在发达国家应运而生。1984年美国哈特福特市将一座旧式大...

    13年前   
    14254    0

    智能家居系统设计

    智能家居系统设计—家用智能照明系统设计智能家居系统设计—家用智能照明系统设计摘要从“电力”的出现,到人们使用白炽灯作为照明工具,再到如今普遍的LED照明,说明着人们不断在追求更高的生活。科技是...

    2年前   
    499    0

    智能厨房设计方案

    俗话说:"民以食为天",厨房从始至终都是家庭生活的重要场所,对于热爱做饭的人来说,厨房绝对是天堂,因为可以为亲朋好友带来饮食的乐趣,然而不会做饭的人而言,厨房觉对是梦魇。那么这个时候,您完全需要...

    4年前   
    1385    0

    二维条码学生多功能智能卡应用方案-RFID解决方案

    二维条码学生多功能智能卡应用方案-RFID解决方案  进入二十一世纪,社会的日益多元化对传统的中国教育环境提出了更多的课题和挑战。而在经济、文化、传媒比较发达的沿海城市、经济特区,开放的社会导...

    11年前   
    429    0

    文档贡献者

    爱***享

    贡献于2021-08-23

    下载需要 5 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档