线程评级:
3D打印挤出机控制程序事件或函数调用
帕特里克你好!

非常感谢你分享你的CS8控制器的工作流程和脚本。
我有类似的型号(CS8C TX60机器人),我不能同时处理MoveL命令和RunOnRobot模式。当我上传到机器人时,MoveL工作良好,但当我在机器人上运行时,给我一个错误(达到soflimit)。MoveJ命令运行良好。
你是如何处理这种情况的?我尝试了所有的职位,我已经在SC8C上安装了HSM加工,所以我也尝试了加工职位。他们的工作方式都一样,这让我在MoveL很不舒服。

最好的,
爱德华·
嗨! !
请帮我把程序放进后处理程序

代码:
def ekstruder ():

这个脚本展示了一个将挤出机与RoboDK集成的示例
#我们需要将这个脚本添加到RoboDK项目中,而不是触发发送E值(挤出机参数)
这个脚本意味着当我们用驱动程序运行3D打印时工作(“在机器人上运行”选项)

#通过以太网发送E_Value (ASCII数字)
EXTRUDER_IP = '192.168.1.15' #挤出机的IP
EXTRUDER_PORT = 100 #与Extruder服务器使用的端口相同

E_Value =无

导入系统
如果len(sys.argv) > 1:
E_Value = float(sys.argv[1])


#实现socket通信,通过以太网/socket发送E_Value
进口套接字
Buffer_size = 1024

#构建要发送的字节数组
bytes2send = bytes(str(E_Value) + '\0', 'ascii')

打印("发送:" + str(bytes2send))
print("连接到%s:%i" % (EXTRUDER_IP, EXTRUDER_PORT))

#连接到挤出机并发送字节数组
S = socket.socket(socket。AF_INET socket.SOCK_STREAM)
s.connect ((EXTRUDER_IP EXTRUDER_PORT))
s.send (bytes2send)
s.close ()

程序连接到打印机并发送g码,我将捕获挤出机的值

代码:
如果code.startswith(挤出机():

#截取挤出机命令。
#如果程序调用是Extruder(123.56)
#我们将数字提取为字符串
#并将其转换为数字

自我。PRINT_E_NEW = float(code[9:-1])

sys。argv = str(self.PRINT_E_NEW)

self.uruchom_ekstruder () ?!!!!!!!!!!!!!!!!!!!!!!
返回
其他:
自我。Addline (code + "()")

如何调用extruder()函数??
机器人报告错误我做得对吗?
谢谢大家的问候

代码:
导入系统
如果len(sys.argv) > 1:
E_Value = float(sys.argv[1])

code_E = 'G1 E ' + str(E_Value)

f_value =无

#检查我们是否在另一个程序中运行这个程序并传递参数
导入系统
如果len(sys.argv) > 1:

F_value = float(sys.argv[2])

如果f_value为None:
F_value = 0

f_transform = f_value * 60 * 1.5676 # mm/s in mm/min and线截面Q对馈线细丝Q/pi*(2.85/2)²的自适应

code_f = ' G2 F' + str(f_value)

脚本报告错误
如何输出可变挤出速度和长丝量的信息


附加文件 缩略图(s)

如何将SPEED_MS变量分配给sys。Argv [2] ??
自我。PRINT_E_NEW被赋值给sys。argv [1]
我想用火花来读取这两个变量

代码:
导入系统
如果len(sys.argv) > 1:

E_Value = float(sys.argv[1])

代码:
mport sys
如果len(sys.argv) > 2:
E_value = float(sys.argv[2])

如果f_value为None:
F_value = 0

我不能将SPEED_MS传递给挤出机速度,我想发送两个参数,速度和长丝数量

谢谢你!




浏览此线程的用户:
1客人(年代)