FXWChuantou_HeLian.h 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348
  1. #if FU_XIAO_WEI_MACHINE == 1
  2. extern void CTHL_InitAction(void);
  3. extern void CTHL_Action(void);
  4. extern void YWXChuanTou_HeLian_InitAction(void);
  5. //extern void YWXChuanTou_HeLian_Action(void);
  6. //extern void YWXChuanTou_HeLian_SetAlarmCode(unsigned alarm_code);
  7. extern void ExtiAcitionX02(void);
  8. #define DIR_P 1
  9. #define DIR_N 0
  10. #define MOTOR_EN 0
  11. #define MOTOR_DISEN 1
  12. #define MOTOR_ALARM 0
  13. #define MOTOR_NOALARM 1
  14. #define CTHL_VAVLE_ERROR_TIME 3000
  15. #define CTHL_MOTOR_ALARM_TIME 5000
  16. #define HSLIAO_CHECK_TIME 1//横送是检测穿头模和第一次合链是否在原位
  17. //故障代码列表
  18. #define CTHL_NO_ALARM 0
  19. #define CTHL_WLZDTJ_ALARM 1 //无拉链自动停机
  20. #define CTHL_XKSC_Limit_ALARM 2 //
  21. #define CTHL_TLiao_Limit_ALARM 3 //推料到位异常
  22. #define CTHL_HSLiao_Limit_ALARM 5 //横送料到位异常
  23. #define CTHL_HSLiao_Origin_ALARM 6 //横送料原位异常
  24. #define CTHL_JLiao_Origin_ALARM 7 //接料到位异常
  25. #define CTHL_CTM_Limit_ALARM 8 //穿头模到位异常
  26. #define CTHL_CTM_Origin_ALARM 9 //穿头模原位异常
  27. #define CTHL_JXM_Limit_ALARM 10 //夹斜码要输出才能推斜码
  28. #define CTHL_XCDW_Limit_ALARM 11 //拉头缺料感应异常
  29. #define CTHL_QMDW_Limit_ALARM 12 //前码定位感应异常
  30. #define CTHL_TXM_Limit_ALARM 13 //推斜码到位异常
  31. #define CTHL_XCBI_Limit_ALARM 14 //小插摆臂到位异常
  32. #define CTHL_SafeDoor_ALARM 15 //
  33. #define CTHL_SF_ALR_ALARM 16 //伺服报警异常
  34. #define CTHL_FXDW_ALARM 17 //方块定位(X04)异常
  35. #define CTHL_ZLT_ALARM 18 //装拉头异常
  36. #define CTHL_CRFK_ALARM 19 //穿入方块超出预设长度
  37. #define CTHL_SERVO_CONFIG_ALARM 20 //伺服配置转矩限制失败
  38. #define CTHL_FZTD_KZ_ALARM 21 //反转拖带卡滞
  39. #define CTHL_FK_Check_ALARM 22 //方块检测异常
  40. #define CTHL_AutoStep cStepMByte
  41. #define CTHL_ZhuangLiaoStep cStepMByte1
  42. #define CTHL_TLiaoStep cStepMByte2
  43. #define CTHL_TD_MotorStep cStepMByte3 //拖带电机
  44. #define CTHL_JiaLianStep cStepMByte4
  45. #define CTHL_ZhenDongStep cStepMByte6
  46. #define CTHL_SongLiaoStep cStepMByte7
  47. #define CTHL_FZ_MotorStep cStepMByte8 //穿链
  48. #define CTHL_AutoStep1 cStepMByte9
  49. #define CTHL_ZhuangLiaoDelay cDelayTime2
  50. #define CTHL_TLiao_Delay cDelayTime3
  51. #define CTHL_TD_MotorDelay cDelayTime4
  52. #define CTHL_AutoDelay cDelayTime5
  53. #define CTHL_TestDelay cDelayTime6
  54. #define CTHL_FZ_MotorDelay cDelayTime7
  55. #define CTHL_TouchDelay cDelayTime8
  56. #define CTHL_AutoDelay1 cDelayTime9
  57. #define CTHL_ZDP_Delay cDelayTime10
  58. #define CTHL_MOTORZ_Delay cDelayTime11
  59. #define CTHL_bSFBBAOJIN_Delay cDelayTime12
  60. //32位无符号变量
  61. #define CTHL_LianLengthCheck cUDword32Buff1
  62. #define CTHL_LianLengthAutoCheck cUDword32Buff2
  63. #define CTHL_LianLengthCheckOld cUDword32Buff3
  64. #define CTHL_LianLengthCheckFK_UP cUDword32Buff4
  65. #define CTHL_LianLengthAutoCheckERROR cUDword32Buff5
  66. #define CTHL_LianLengthAutoCRCDcheck cUDword32Buff6
  67. #define CTHL_LianLengthAutoFZcheck cUDword32Buff7
  68. #define CTHL_LianLengthAutoFZCRcheck cUDword32Buff8
  69. #define CTHL_LianLengthAutoFZcheck_DW cUDword32Buff9
  70. #define CTHL_LianLengthAutolengthcheck cUDword32Buff10
  71. #define CTHL_DataBuff cUDword32Buff11
  72. #define CTHL_LianLengthBuff cUDword32Buff12
  73. //32位有符号变量
  74. #define CTHL_XSavePosBuff cDword32Buff1
  75. #define CTHL_X_CXPosBuff cDword32Buff2
  76. #define CTHL_YSavePosBuff cDword32Buff3
  77. #define CTHL_CheckInX02PosBuff cDword32Buff4
  78. #define CTHL_YsaveCXDWPosBuff cDword32Buff5
  79. #define CTHL_LENTH cDword32Buff6
  80. #define CTHL_XSavePosBuff1 cDword32Buff7
  81. #define CTHL_XSavePosBuff2 cDword32Buff8
  82. #define CTHL_XSavePosBuff3 cDword32Buff9
  83. //16位变量
  84. #define CTHL_RunStepSave cUShort16Buff1
  85. #define CTHL_Test cUShort16Buff2
  86. //8位变量
  87. #define CTHL_TryCnt cCharBuff1
  88. #define CTHL_cZipCnt cCharBuff2
  89. #define CTHL_stop cCharBuff3
  90. #define CTHL_AUTO_start cCharBuff4
  91. #define CTHL_MOTOR_MODE cCharBuff5
  92. #define CTHL_wltzi cCharBuff6
  93. #define CTHL_cStopMode cCharBuff7
  94. #define cTDAUTO cCharBuff8
  95. #define cDELAYONE cCharBuff9
  96. #define cGFJAUTO cCharBuff10
  97. #define cHELIANMG cCharBuff11
  98. #define cBAOjin cCharBuff12
  99. //位标志位
  100. #define bTuiLaTouOkFlg bBitFlag0
  101. #define bZhuangLiaoOkFlg bBitFlag1
  102. #define bXiaMoENFlg bBitFlag2
  103. #define bHeLaTouOK bBitFlag3
  104. #define bCL_EN_FLG bBitFlag4
  105. #define bCL_OK_FLG bBitFlag5
  106. #define bCheckEN_FLG bBitFlag6
  107. #define bSingOneFlg bBitFlag7
  108. #define bCxcAuto bBitFlag8
  109. #define bDanBuAuto bBitFlag9
  110. #define bFZ_LengthOK bBitFlag10
  111. #define bFKCheck_Flag bBitFlag11
  112. #define CTHL_ZhouWanone bBitFlag12
  113. #define CTHL_ZhouWantwo bBitFlag13
  114. #define CTHL_GF_Change bBitFlag14
  115. #define CTHL_SD bBitFlag15 //松一次带
  116. #define CTHL_TOTAL_ADDR 76
  117. #define CTHL_SPEED_ADDR 78
  118. #define CTHL_ALARM_ADDR 100
  119. #define CTHL_TRUST_ALARM_ADDR 102
  120. //104、105地址 作产量锁
  121. #define CTHL_PARAM_TDCYCLE_PULSE user_datas[0]//0 转一圈脉冲数
  122. #define CTHL_PARAM_TDCYCLE_LENGTH user_datas[1]//整数 转一圈拖带多长
  123. #define CTHL_PARAM_FZCYCLE_LENGTH user_datas[2]//0 转一圈脉冲数
  124. #define CTHL_PARAM_FZLDCYCLE_LENGTH user_datas[3]//整数 转一圈拖带多长
  125. //#define CTHL_PARAM_TD_RunSpeed user_datas[4]//整数 拖带电机拖带速度
  126. #define CTHL_PARAM_FKDW_Speed user_datas[5]//整数 方块定位速度(低速度)
  127. //#define CTHL_PARAM_FZ_Speed user_datas[6]//整数 反转速度
  128. #define CTHL_PARAM_first_CL_MAX_Length user_datas[7]//第一条拉链最长度
  129. #define CTHL_PARAM_GFJ_LENGTH (user_datas[8]) //感应到方块后定位距离
  130. //#define CTHL_PARAM_FZFK_IN_LENGTH user_datas[9] //反转感应方块后再走长度
  131. #define CTHL_PARAM_FKDWMAN_Speed user_datas[10] //感应到方块后慢速
  132. #define CTHL_PARAM_HLT_SPEED_Speed user_datas[11]//合拉头速度
  133. #define CTHL_PARAM_TLiao_BACKDELAY (10*user_datas[12])//0.01推拉头到位延时返回
  134. #define CTHL_PARAM_MaGou_DELAY (10*user_datas[13])//0.01接料到位延时码勾
  135. #define CTHL_PARAM_HSLiaoOff_DELAY (10*user_datas[14])//0.01码勾输出后退横送料
  136. #define CTHL_PARAM_CheckLT_DELAY (10*user_datas[15])//0.01码勾输出后延时检测拉头
  137. #define CTHL_PARAM_WLCDSHEZHI_LENTH user_datas[16] //拉带报警长度
  138. #define CTHL_PARAM_CXDW_Length user_datas[17] //小插定位长度
  139. #define CTHL_PARAM_XCDWFZ_DELAY (10*user_datas[18]) //前码定位后延时反转
  140. #define CTHL_PARAM_CRTD_DELAY (10*user_datas[19]) //延时穿入拖带
  141. #define CTHL_PARAM_FMOTOR_BILI 0.95// (user_datas[20]/100) //0.01 副电机指数
  142. #define CTHL_PARAM_XCLD_DELAY (10*user_datas[21]) //延时合链
  143. #define CTHL_PARAM_HL_LENGTH user_datas[22] //慢速合链长度
  144. #define CTHL_PARAM_H_JLiao_DELAY (10*user_datas[23])//横送到位延时接料
  145. //#define CTHL_PARAM_CRHDW_LENGTH user_datas[23] //穿入后定位长度
  146. #define CTHL_PARAM_SMG_LENGTH user_datas[24] //松码钩后输出合链长度
  147. #define CTHL_PARAM_ZDP_Start_TIME (10*user_datas[25]) //0.01振动盘启动延时
  148. #define CTHL_PARAM_ZDP_Stop_TIME (10*user_datas[26]) //0.01振动盘延时停止
  149. #define CTHL_PARAM_HELIAN_LENGTH user_datas[27] //剩余合链长度
  150. //#define CTHL_PARAM_FDGN_LENGTH user_datas[28] //第一个方块屏蔽长度
  151. //#define CTHL_PARAM_FKJC_DELAY (user_datas[29]*10) //延时输出方块检测
  152. #define CTHL_PARAM_TXCDW_DELAY (user_datas[30]*10) //延时退推方块
  153. #define CTHL_PARAM_XCCR_SPEED user_datas[31] //小插插入速度
  154. #define CTHL_PARAM_ZDP_AUTO user_datas[32] //振动盘控制
  155. #define CTHL_PARAM_XCCR_LENGTH user_datas[33] //小插插入长度
  156. #define CTHL_PARAM_FKIN_LENGTH user_datas[34] //提前下方块
  157. #define CTHL_PARAM_XCIN_DELAY (user_datas[35]*10) //小插定位后延时拖带
  158. #define CTHL_PARAM_YDC_DELAY (user_datas[36]*10) //延时压方块
  159. //#define CTHL_PARAM_GFJSZ_LENGTH user_datas[37] //倒带长度
  160. #define CTHL_PARAM_XMDD_LENGTH user_datas[38] //斜码松带反转
  161. #define CTHL_PARAM_DBSF_MODE user_datas[39] // DB伺服报警切换 1外部接口
  162. #define CTHL_PARAM_SLOW_LENGTH user_datas[40] // 减速长度
  163. #define CTHL_PARAM_JXM_SPEED user_datas[41] //进斜码速度
  164. #define CTHL_PARAM_TXM_DELAY (user_datas[42]*10) //推斜码进去长度
  165. #define CTHL_PARAM_TTXM_LENGTH user_datas[43] //退推斜码长度
  166. #define CTHL_PARAM_TJXM_LENGTH user_datas[44]//退夹斜码长度
  167. //#define CTHL_PARAM_FZSTOP_SPEED user_datas[45]//反转停机速度
  168. #define CTHL_PARAM_FZSTOP_LENGTH user_datas[46]//反转停机距离
  169. #define CTHL_PARAM_FZCXC_LENGTH user_datas[47]//穿小插反转距离
  170. #define CTHL_PARAM_XMZM_MODE user_datas[48]//斜码直码切换
  171. //#define CTHL_PARAM_YSXC_DELAY (user_datas[49]*10)//延时顶链
  172. #define CTHL_PARAM_TD_RunSpeed (user_datas[50])//整数 拖带电机拖带速度
  173. #define CTHL_PARAM_FZ_Speed (user_datas[51]) //整数 反转速度
  174. #define CTHL_PARAM_FKDW_OUT_DELAY (user_datas[52]) //方块定位阀延时动作
  175. #define CTHL_PARAM_TuiXiaMo_DELAY (10*user_datas[53]) //退下模时间
  176. #define CTHL_PARAM_FKDW_FZSTOP_DELAY (10*user_datas[54]) //方块反转定位延时停
  177. #define CTHL_PARAM_Test (user_datas[55]) //
  178. #define CTHL_PARAM_XMCR_SLOW_LENGTH (user_datas[56]) //斜码穿入慢速长度
  179. #define CTHL_PARAM_XMCR_YJDW_LENGTH (user_datas[57]) //一键定位补偿距离
  180. #define CTHL_PARAM_CRFZ_LENGTH (user_datas[58]) //穿入小插后反转长度
  181. #define CTHL_PARAM_HeLianSY_LENGTH (user_datas[60]) //最后一条合链剩余长度
  182. #define CTHL_PARAM_CR_BAOHU_LENGTH (user_datas[61]) //穿入保护长度
  183. #define CTHL_PARAM_CLsudu_SPEED (user_datas[62]) //穿入保护长度
  184. #define CTHL_PARAM_XCFZ_LENGTH (user_datas[63]) //辅助拉小插长度
  185. #define CTHL_PARAM_TQMDW_DELAY (10 * user_datas[64]) //辅助拉小插长度
  186. #define CTHL_PARAM_SDXZ (user_datas[65]) //反转时速度修正,倒退轮的速度和长度修正
  187. #define CTHL_PARAM_TMG_TXM_DELAY (user_datas[66]) //退码勾后延时退下模
  188. #define CTHL_PARAM_FZJS_LENGTH (user_datas[67]) //反转减速长度
  189. #define CTHL_PARAM_FZDS_Speed (user_datas[68]) //反转入方块速度
  190. #define CTHL_PARAM_FZJSDS_LENGTH user_datas[69] //穿入方块低速长度
  191. #define CTHL_PARAM_TDDW_LENGTH (user_datas[70]) //感应到方块后定位距离
  192. #define CTHL_PARAM_XCCRBH_LENGTH (user_datas[71]) //小插插入保护长度
  193. #define CTHL_PARAM_JMDW_LENGTH (user_datas[72]) //前码定位距离
  194. //速度页面调试参数
  195. #define CTHL_PARAM_First_SPEED user_datas[150] //前两条速度
  196. #define CTHL_PARAM_Stop_length user_datas[151] //前两条定位长度
  197. #define CTHL_PARAM_FZFirst_SPEED user_datas[152] //前两条反转速度
  198. #define CTHL_PARAM_FZStop_length user_datas[153] //前两条反转定位长度
  199. //伺服参数 180~190
  200. #define SERVO_PARAM_TRARR_LIMITMAX user_datas[180]//伺服扭矩最大限制
  201. #define SERVO_PARAM_TRARR_LIMITMIN user_datas[181]//伺服扭矩最小限制
  202. #define SERVO_PARAM_SPEED_DIFFER user_datas[182]//速度差值
  203. #define SERVO_PARAM_ENCODE user_datas[190]//转换后的值
  204. #define SERVO_PARAM_ALARM user_datas[192]//转换后的值
  205. #define CTHL_FK_Check M0384 //X00过链感应
  206. #define CTHL_FK_Check_UP (M0384 && !OLDM384)
  207. #define CTHL_FK_Check_DW (!M0384 && OLDM384)
  208. #define CTHL_TFK_Limit_IN M0385 //X01推前码到位
  209. #define CTHL_FKGY_IN M0386 //X02方块感应
  210. #define CTHL_FKGY_IN_UP (M0386 && !OLDM386)
  211. #define CTHL_FKGY_IN_DW (!M0386 && OLDM386)
  212. #define CTHL_TXC_Limit_IN M0387 //X03推小插到位
  213. #define CTHL_FKDW_IN M0388 //X04方块定位感应
  214. #define CTHL_FKDW_IN_UP (M0388 && !OLDM388)
  215. #define CTHL_LTou_Check M0389 //X05开锁完成
  216. #define CTHL_CTM_Origin_IN M0390 //X06下模原位
  217. #define CTHL_CTM_Limit_IN M0391 //X07下模到位
  218. #define CTHL_JLiao_Limit_IN M0392 //X10接拉头到位
  219. #define CTHL_HSLiao_Origin_IN M0393 //X11横送料原位
  220. #define CTHL_HSLiao_Limit_IN M0394 //X12横送料到位
  221. #define CTHL_TLiao_Origin_IN M0395 //X13推料原位
  222. #define CTHL_TXM_Limit_IN M0396 //X14推斜码到位
  223. #define CTHL_XCDW_Limit_IN M0397 //X15小插到位
  224. #define CTHL_QMDW_IN M0398 //X16前码定位
  225. #define CTHL_QMDW_IN_UP (M0398 && !OLDM398)
  226. #define CTHL_ZDP_IN M0399 //X17振动盘
  227. #define CTHL_CTM_Minid_IN M0400// PAin(15) //X20 伺服报警
  228. #define CTHL_SF_ALR_IN M0405 //X20 伺服报警
  229. #define CTHL_SafeDoor_IN M0401 //X21 安全门
  230. #define CTHL_START_IN M0402 //X22 //启动
  231. #define CTHL_START_IN_UP (M0402 && !OLDM402)
  232. #define CTHL_STOP_IN M0403 // X23 //停止
  233. #define CTHL_STOP_IN_UP (M0403 && !OLDM403)
  234. #define CTHL_STOP_IN_DW (!M0403 && OLDM403)
  235. #define CTHL_NoLaLian_IN M0404 //X24 最后拉链信号
  236. #define CTHL_NoLaLian_IN_UP (M0404 && !OLDM404)
  237. //输出
  238. #define CTHL_TLiao_VAVLE M0304 //Y00推料
  239. #define CTHL_HSLiao_VAVLE M0305 //Y01横送料
  240. #define CTHL_JLTou_VAVLE M0306 //Y02接拉头
  241. #define CTHL_CTXM_VAVLE M0307 //Y03下模
  242. #define CTHL_MGuo_VAVLE M0308 //Y04码勾电磁阀
  243. #define CTHL_JXM_VAVLE M0309 //Y05夹斜码电磁阀
  244. #define CTHL_TXM_VAVLE M0310 //Y06推斜码电磁阀
  245. #define CTHL_QMDW_VAVLE M0311 //Y07前码定位电磁阀
  246. #define CTHL_TFK_VAVLE M0312 //Y10推方块
  247. #define CTHL_FKDW_VAVLE M0313 //Y11方块检测
  248. #define CTHL_HL_VAVLE M0314 //Y12合链电磁阀
  249. #define CTHL_YFK_VAVLE M0315 //Y13压方块电磁阀
  250. #define CTHL_YXC_VAVLE M0316 //Y14压小插电磁阀
  251. #define CTHL_XCDW_VAVLE M0317 //Y15小插到位检测电磁阀
  252. #define CTHL_JCBI_VAVLE M0318 //Y16小插摆臂电磁阀
  253. #define CTHL_ZhenDongPian_OUT M0319 //Y17振动盘吹气
  254. #define CTHL_SF_ALR_CLR M0320 //Y20伺服报警清除
  255. #define CTHL_DingLian_VAVLE M0321 //Y21顶链电磁阀
  256. #define CTHL_TestLED M0328 //Y30 测试状态灯
  257. //M0~M4全局固定使用
  258. /*
  259. #define bRunning M0000
  260. #define bStart M0001
  261. #define bStop M0002
  262. #define bAlarmStop M0003
  263. #define bClearTotal M0004
  264. */
  265. #define CTHL_bHSL M0005 //手动横送料
  266. #define CTHL_bTLiao M0006 //手动推料
  267. #define CTHL_bJLT M0007 //接拉头
  268. #define CTHL_bMG M0008 //码勾
  269. #define CTHL_bCTXM M0009 //下模
  270. #define CTHL_bJXM M0010 //夹斜码
  271. #define CTHL_bTXM M0011 //推斜码
  272. #define CTHL_bQMDW M0012 //前码定位
  273. #define CTHL_bTFK M0013 //推方块
  274. #define CTHL_bFKDW M0014 //方块定位
  275. #define CTHL_bHL M0015 //合链
  276. #define CTHL_bYFK M0016 //压方块
  277. #define CTHL_bYCX M0017 //压小插
  278. #define CTHL_bCXDW M0018 //小插到位
  279. #define CTHL_bXCBI M0019 //小插摆臂
  280. #define CTHL_bSingOne M0020 //单循环
  281. #define CTHL_bDANBU_MODE M0021 //单步调试
  282. #define CTHL_bHandWork_MODE M0022 //手动穿链模式
  283. #define CTHL_bAutoZhuangLiao M0024 //自动装料
  284. #define CTHL_bCLMotor_P M0025 //X轴电机测试
  285. #define CTHL_bCLMotor_N M0026 //X轴电机测试
  286. #define CTHL_bCLMotor_Z M0027 //Z轴电机测试
  287. #define CTHL_bBaoJin M0028 //报警清除加松轴
  288. #define CTHL_bYJDW M0029 //过链杆压带
  289. #define CTHL_bTiaoShiMode M0040 //调试模式
  290. #define CTHL_bTiaoShiStep M0041 //调试单步
  291. #endif