• 395.67 KB
  • 10页

工控程序开发训练项目报告

  • 10页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'工控程序开发训练项目课程学习总结报告班级:41132学号:姓名:指导教师:郑家辉 2013年4月第一章项目过程1.1项目产品简介名称:微机控制打包秤生产管理系统特点:工作界面简单,操作性强。主要用途:适用于各种颗粒状物料打包,如大米,小麦。1.2项目产品主要功能及主要模块 打包开始点动喂料1中速喂料否占达到45kg是称斗屮的料是低速喂料否喂料搅笼电机停止转动否达到49kg是称斗屮的料是稳定称斗2s否放置包装袋占达到50kg是称斗屮的料是1.3主控生产流程图高速喂料称斗中的料是否达到38kg包装袋是否夹紧称斗开门放料称斗放料是否放完(重暈〈0.5kg)是打包完成 1.4数据库结构product_table表。主要用于记录各个晶种的高停重量、中停重量、低停重量、单包重量。字段名称数据类型字段大小是否主键product」d自动编号长整型是productname文本10否highspeedweight数字单精度型否middlespeedweight数字单精度型否1owspeedweight数字单精度型否sin£1ebagweight数字单精度型否sc.table表。主耍用于记录生产品种的打包日期、打包时间、生产班组、品种名称、单包重量、每包生产重量、生产批号、字段名称数据类型字段大小是否主键scnumber自动编号长整型是scdate口期/时间短口期否sctimc口期/时间长时间否scgroup文本2否scproductname文本16否scsingleweight数字单精度型否scweight数字单精度型否scpihao文本14否1.5项目产品运行效果图・For»・am生产管理数据測览报表打印$綁功能帮助关闭 第二章项目学习2.1本课程的项目中所涉及到的VisualBasic方面的主要知识1、设置窗体或控件的属性值2、shape控件的使用3、VB赋值语句的使用4、计时器控件的设置与使用5、exe文件的生成和安装包的制作2.2核心代码分析"实际生产主控程序 PublicSubproduce_program_true(pzmc,DimhwAsIntegerDimmwAsIntegerDimlwAsIntcgerDimaAsIntegerDimabAsIntegerDimphAsStringLabel8.Caption二pzmcCallclose_doormark_ssj_yz=TrueFora=1ToscbsLabel9.Caption二scbs"高速喂料mark_djl=Truemark_xjl=TrueCallhigh_speedmark_cdl_zj=TrueDoWhi1eseale_weight〈二则一直高速喂料scbs,sebz,gtzl,ztzl,dtzl,dbzl)"定义hw变量"定义hw变量"定义hw变量"定义hw变量"定义hw变量"定义hw变量"显示品种名称"称斗门关"启动输送机运转动画"为生产包数定义循环"显示生产包数"启动大搅笼动画"启动小搅笼动训"启动高速喂料(大、小搅笼)电机"启动秤斗料增加动画"如果当前秤重量W高速停止重量gtzl,scale_weight二now_scale_weight"读取当前秤数据Labelchengdouzhongliang.Caption=Format(scaleweight,〃0.00")"将称斗料•重量值保留两在小数送屏幕显示—DoEvents"转让CPU控制权Loop"屮速喂料markdjl=Truemarkxjl二FalseCal1middle_speedShape_xiaojiaoIongliao.Visible二FalseDoWhilescale_weight<=ztzl则一直中速喂料scale_weight二now_scale_weight"启动大搅笼动画"关闭小搅笼动画"启动中速喂料(人搅笼)电机"将小搅笼动画隐藏"如果当前秤重量W屮速停止重量ztzl,"读取当前秤数据 Labcl_chcngdouzhongliang.Caption量值保留两社小数送屏幕显示DoEventsFormat(scale_weight,〃0.00")"将称斗料重"转让CPU控制权Loop"低速喂料mark_djl二Falsemark_xjl=TrueCalllow_speedShape_dajiaolongliao.Visible二FalseDoWhi1escale_weight〈二dtzl则一直低速喂料"关闭大搅笼动画"启动小搅笼动训"启动低速喂料(小搅笼)电机"将大搅笼动画隐藏"如果当前秤重量W低速停止重量dtzl,scale_weight二now_scale_weight"读取当前秤数据Labelchengdouzhongliang.Caption=Format(scaleweight,〃0.00")"将称斗料•重量值保留两在小数送屏幕显示—DoEvents"转让CPU控制权Loopmark_xjl=FalseShapexiaojiaolongliao.Visible=Falsemarkcdlzj二Falseab二Round(seale_weight,2)式显示—"取称数据Callstopspeedmysleep(1000)seale_weight二nowseale_weight"点动喂料"""关闭小搅笼动画"将小搅笼动画隐藏"关闭秤斗料增加动画"将当前称数据以保留小数点后两位的形"停止喂料,电机停转"电机停转1000毫秒"读取当前秤数据DoWhiledbzl-scale_weight>dbzl*2/1000"如果(单包重量-称斗重量)大于单包重量*2/1000,则一直点动喂料markxjl二True"启动小搅笼动iUljCal1low_speed"启动低速喂料(小搅笼)电机my_slecp(500)"电机停转500毫秒mark_xjl=False"关闭小搅笼动油iShapexiaojiaolongliao.Visible=False"将小搅笼动画隐藏Callstopspeed"停止喂料,电机停转mysleep(1000)"屯机停转1000毫秒scale_wcight二now_scale_weight"读取当前秤数据Label_chengdouzhongliang・Caption二Format(scale_weight,"0.00〃)"耳各利〈斗料重量值保留两心小数送屏幕显示"DoEvents"转让CPU控制权Loop"包装袋是否夹紧 "检测包装袋是否夹紧"转让CPU控制权DoWhilebag_status<>1DoEventsLoop Label10.Caption=abb=scale_weightaa=aa+bbLabel11.Caption二Format(aa,〃0.00〃)"显示当前包数"将当前称数据赋值给bb"将aa+bb的值即累计重量赋值给aa"将累计重量值保留两位小数送屏幕显示Picture_shangdai.Visible二TruePicture_xiadai.Visible=False"称斗开石Callopendoormark_cdl_js=Truemark_cd_km=Truemark_bag_zj=True"称斗料亘否放完DoWhilescale_weight>二0.5seale_weight=now_scale_weightLabcl_chcngdouzhongliang・Caption二Format(scalc_wcight,"显示夹紧包装袋时包装袋的动画"隐藏释放包装袋时包装袋的动画"启动称斗开门"显示称斗料增加动画"显示称斗开门动画"显示包装袋移动动画"检测称斗屮剩余料是否大于0.5kg"读取当前秤数据〃0・00〃)’将称斗料重量值保留两位小数送屏幕显示DoEventsLoop"称斗关门Callclose_doormark_cdl_js=Falsemark_cd_km=Falsemarkbagzj二False"释扳包義袋Shapc_kaimcnliao.Visiblc=FalsePicture_shangdai・Visible=FalsePicturexiadai.Visible=Truemarkbagyd二TrueCal1release_bagLabel_baoshu.Caption=〃第〃+Str(a)Ifa=1Thenph=Format(Date,"yyyymmdd〃)&"yyyymmddhhmmss”的格式显示EndTf"转让CPU控制权"启动称斗关门"关闭称斗料增加动画"关闭称斗开门动画"关闭包装袋料增加动11"将开门下放料动画隐藏"隐藏夹紧包装袋时包装袋的动画"显示释放包装袋时包装袋的动画"显示包装袋移动动画"启动释放包装袋+〃袋〃’显示“第几袋”"为生产批号定义if循环Format(Time(),"hhniniss”)"将生产批号以Adodc_sc・Recordsct.AddNcwAdodc_sc・Recordset・Fields(〃sc_date〃)=DateAdodcsc.Recordset.FieldsC/sc_time,,)=TimeAdodcsc.Recordset.Fields(z,sc_groupz,)二sebzAdodc_sc.Recordset.Fields(〃sc_product_n“me〃)二pzmc值pzmc"添加一条空纪录"为字段sc_date赋值Date"为字段setime赋值Time"为字段sc_group赋值sebz"为字段sc_product_name赋Adodc_sc・Recordset・Fields(〃sc_single_weight〃)二dbzl"为字段sc_single_weight赋值dbzl为字段sc_weight赋值abAdodcsc.Recordset.Fields(z,sc_weightz,)二ab Adodc_sc.Recordset.Fields(,/sc_pihao,/)=ph"为字段sc_pihao赋值phAdodc_sc・Recordset・Update"更新当前i己录NextEndSub"定义ss变量"定义mm变量"将C0M1端口赋值给ss"查找数据起始位置PrivateSubMSComml_OnComm()DimssAsStringDimmmAsIntegerss二MSComml.Inputmm二TnStr(ss,now_scale_weight=Vai(Mid(ss,mm+1,7))/10"读取当前称数据Label_chengdouzhongliang.Caption二Format(now_scale_weight,〃0・00")量值保會两位小数送屏幕显示__MSComml.InBufferCount二0"清除缓冲区数据EndSub2.3在整个包装秤自动称重系统中,指出本软件所起的作用对生产实行自动控制,并能够进行生产管理。第三章项目总结3.1在项目学习过程中遇到的问题、困难及解决方法或过程;问题:编写点动喂料代码时,总出现问题,实行不了点动。解决方法:通过询问同学,对点动喂料过程采用dowh订e的语句。3.2对本项目产品的完成情况评价;基本完成了项目要求,能对生产实行自动化控制。3.3项目学习过程中自己在知识学习、技能训练等方面的体会及收获;体会:学会了计吋器控件的使用;数据库的管理的应用;收获:在实际生产环节的调试过程中,懂得当遇到问题时,不应慌张,应细心的找出问题,并解决问题。3.4对本次项目教学的意见或建议建议:项廿数量太少,自己不能够熟练的掌握VB各个控件的使用。应多壇加些项目,锻炼自己熟练编程的能力。'