傻大方


首页 > 知识库 > >

南京|南京工程学院数控原理与系统课程设计_直线-直线刀具补偿刀补程序源代码讲解


按关键词阅读: 工程学院 南京 讲解 源代码 程序 补偿 刀具 直线 课程设计 系统 原理 数控

1、数控 122 太劣阿昕哥四、程序设计Public X0 As Double, Y0 As Double, X1 As Double, Y1 As Double, X2 As Double, Y2 As Double, R As DoublePublic Xs1 As Double, Ys1 As Double, Xs2 As Double, Ys2 As DoublePublic Ori As IntegerPublic Xl1 As Double, Yl1 As Double, Xl2 As Double, Yl2 As Double, dX1 As Double, dY1 As Doubl 。

2、e, dX2 As Double, dY2 As Double, d1 As Double, d2 As DoublePrivate Sub Command1_Click()Dim X1_FWD As Integer, Y1_FWD As Integer, X2_FWD As Integer, Y2_FWD As IntegerDim alfa As Double, beta As DoubleCall PaintAxis 绘制补偿前图像Picture1.ForeColor = vbBluePicture1.DrawWidth = 1Picture1.Line (X0, Y0)-(X1, Y1 。

3、)Picture1.Line (X1, Y1)-(X2, Y2) 算法设计 计算坐标增量 dX1 = X1 - X0 dY1 = Y1 - Y0 dX2 = X2 - X1 dY2 = Y2 - Y1 alfa = Atn(dY1 / dX1) beta = Atn(dY2 / dX2)If dX1 = 0 ThenX1_FWD = 1ElseX1_FWD = -1End IfIf dX2 = 0 ThenX2_FWD = 1ElseX2_FWD = -1End IfIf dY1 = 0 ThenY1_FWD = 1ElseY1_FWD = -1End IfIf dY2 = 0 ThenY2_ 。

4、FWD = 1ElseY2_FWD = -1End If 计算 d1,d2 d1 = Sqr(dX1 人 2 + dY1 人 2) d2 = Sqr(dX2 人 2 + dY2 人 2)计算方向矢量投影Xl1 = dX1 / d1Yl1 = dY1 / d1Xl2 = dX2 / d2Yl2 = dY2 / d2 判断缩短型 ,伸长型 ,插入型If Ori * (Yl2 * Xl1 - Xl2 * Yl1) = 0 Then 缩短型刀补建立If Combo1.ListIndex = 0 And Ori * (Yl2 * Xl1 - Xl2 * Yl1) 0 Then Xs1 = X1 - R。

5、* Ori * Yl1Ys1 = Y1 + R * Ori * Xl1 X_0p.Text = Xs1 - dX1 Y_0p.Text = Ys1 - dY1 X_s1.Text = Xs1 Y_s1.Text = Ys1 X_2p.Text = X2 Y_2p.Text = Y2Picture1.ForeColor = vbMagentaPicture1.Line (Xs1 - dX1, Ys1 - dY1)-(Xs1, Ys1)Picture1.Line (Xs1, Ys1)-(X2, Y2)End IfElseIf Ori * (Yl2 * Xl1 - Xl2 * Yl1) = 0 Th 。

6、en 伸长型刀补建立If Combo1.ListIndex = 0 Then 第一对转接点 Xs1 = X1 - R * Ori * Yl1Ys1 = Y1 + R * Ori * Yl1第二对转接点Xs2 = X1 + (Xl2 - Xl1) * R * Ori / (Xl1 * Yl2 - Xl2 * Yl1) Ys2 = Y1 + (Yl2 - Yl1) * R * Ori / (Xl1 * Yl2 - Xl2 * Yl1) 输出坐标X0,Y0X_0p.Text = X0Y_0p.Text = Y0Xs1,Ys1X_s1.Text = Xs1Y_s1.Text = Ys1Xs2,Ys2X 。

7、_s2.Text = Xs2Y_s2.Text = Ys2X2 Y2X_2p.Text = Xs2 + dX2Y_2p.Text = Ys2 + dY2 绘图Picture1.ForeColor = vbMagentaPicture1.Line (X0, Y0)-(Xs1, Ys1)Picture1.Line (Xs1, Ys1)-(Xs2, Ys2)Picture1.Line (Xs2, Ys2)-(Xs2 + dX2, Ys2 + dY2)刀补进行ElseIf Combo1.ListIndex = 1 ThenXs1 = X1 + (Xl2 - Xl1) * R * Ori / (Xl1。

8、* Yl2 - Xl2 * Yl1)Ys1 = Y1 + (Yl2 - Yl1) * R * Ori / (Xl1 * Yl2 - Xl2 * Yl1) 输出坐标X0,Y0 X_0p.Text = X0 Y_0p.Text = Y0 Xs1,Ys1 X_s1.Text = Xs1 Y_s1.Text = Ys1X2 Y2X_2p.Text = Xs2 + dX2Y_2p.Text = Ys2 + dY2 绘图Picture1.ForeColor = vbMagentaPicture1.Line (Xs1 - dX1, Ys1 - dY1)-(Xs1, Ys1)Picture1.Line (Xs 。

9、1, Ys1)-(Xs1 + dX2, Ys1 + dY2)刀补撤销ElseIf Combo1.ListIndex = 2 ThenXs1 = X1Ys1 = Y1Xs2 = X1+ (Xl2 - Xl1) * R * Ori / (Xl1 * Yl2 - Xl2 * Yl1) + (Yl2 - Yl1) * R * Ori / (Xl1 * Yl2 - Xl2 * Yl1) - R * Ori * Yl2+ R * Ori * Xl2Ys2 = Y1 输出坐标 X0,Y0X_0p.Text = Xs1 - dX1Y_0p.Text = Ys1 - dY1 Xs1,Ys1X_s1.Text = 。

10、 Xs1Y_s1.Text = Ys1Xs2,Ys2X_s2.Text = Xs2Y_s2.Text = Ys2 X2 Y2X_2p.Text = X2Y_2p.Text = Y2 绘图Picture1.ForeColor = vbMagentaPicture1.Line (Xs1 - dX1, Ys1 - dY1)-(Xs1, Ys1)Picture1.Line (Xs1, Ys1)-(Xs2, Ys2)Picture1.Line (Xs2, Ys2)-(X2, Y2)End IfElseIf Ori * (Yl2 * Xl1 - Xl2 * Yl1) 0 ThenPicture1.Line 。

11、 (i * 100, 0)-(i * 100, 10) x 轴刻度Picture1.CurrentX = i * 100 - 52: Picture1.CurrentY = -10: Picture1.Print i * 100 x 轴数字Picture1.Line (0, i * 100)-(10, i * 100) y 轴刻度Picture1.CurrentX = -88: Picture1.CurrentY = i * 100 + 16: Picture1.Print i * 100 y 轴数字 End IfNext iPicture1.ForeColor = vbRedPicture1 。

【南京|南京工程学院数控原理与系统课程设计_直线-直线刀具补偿刀补程序源代码讲解】12、.CurrentX = 10: Picture1.CurrentY = -10: Picture1.Print 0Picture1.CurrentX = 980: Picture1.CurrentY = -14: Picture1.Print XPicture1.CurrentX = 15: Picture1.CurrentY = 990: Picture1.Print YPicture1.ForeColor = vbBlack 显示框清零X_0p.TextY_0p.TextHHHHX_s1.TextHHY_s1.TextX_s2.TextHHHHY_s2.TextHHX_s3.TextHHY_s3.TextHHX_2p.TextY_2p.TextHHHHEnd Sub 。


    来源:(未知)

    【学习资料】网址:/a/2021/0329/0021808507.html

    标题:南京|南京工程学院数控原理与系统课程设计_直线-直线刀具补偿刀补程序源代码讲解


    上一篇:2021年幼儿园小班|2021年幼儿园托班的个人工作计划word版

    下一篇:变压器|变压器租赁合同