新代OpenCNC_PLC发展工具操作手册

需积分: 9 11 下载量 27 浏览量 更新于2024-07-09 收藏 4.93MB PDF 举报
"OpenCNC_PLC发展工具操作手册详细介绍了如何使用新代PLC进行机床控制的编程和设置。手册包含了PLC编辑器的介绍、M/S/T码的使用、警报处理、操作面板应用、铣床斗笠式刀库的应用以及各种PLC元件的详细说明。" 本文档是针对OpenCNC_PLC发展工具的操作手册,主要目标是帮助用户理解和掌握如何利用该工具进行PLC编程,以实现对机床设备的有效控制。手册首先介绍了PLC编辑器,包括软件的下载、安装和界面操作,让使用者能顺利开始编程工作。 在M/S/T码部分,手册详细讲解了这些代码的功能目的、动作流程、撰写方法以及宏程序的调用。M/S/T码是数控系统中的重要指令,用于控制机床的动作,如启动、停止、换刀等。通过理解并熟练运用这些代码,用户可以编写出满足需求的控制程序。 关于警报处理,手册涵盖了系统预设警报和自定义警报的设置和响应,确保在机床运行过程中能够及时发现并解决可能出现的问题,保障设备安全。 操作面板应用范例部分,提供了如何利用PLC编辑器设定和控制操作面板的实例,帮助用户了解如何与人机交互界面进行有效通信。 铣床斗笠式刀库的应用范例,详细阐述了M、S、T码在刀库管理中的具体应用,包括刀具选择、转速设定等,对于提高加工效率和精度至关重要。 此外,手册还整理了常用的C/S/R指令,解释了它们与轴向控制、MST通道和多轴群的关系,方便用户快速查找和使用。 在PLC元件章节,手册涵盖了从基础的接点、线圈到复杂的算术运算、比较、逻辑运算、计时器、计数器,再到CNC特定元件和串行通信元件的详细说明,为用户提供了全面的元件参考。 最后,手册提到了背景运算元件和暂存器间接定值功能,这些高级功能可以帮助用户实现更复杂、高效的程序设计。 OpenCNC_PLC发展工具操作手册是一部详尽的指南,旨在帮助用户熟练掌握新代PLC的编程和应用,从而优化机床的控制逻辑,提升设备性能和生产效率。

plt.boxplot(x=train_data.values,labels=train_data.columns) 3 plt.hlines([-7.5, 7.5], 0, 40, colors='r') 4 plt.show() 5 6 train_data = train_data[train_data['V9']>-7.5] 7 train_data.describe() 8 9 from sklearn import preprocessing 10 11 features_columns = [col for col in train_data.columns if col not in ['target']] 12 13 min_max_scaler = preprocessing.MinMaxScaler() 14 15 min_max_scaler = min_max_scaler.fit(train_data[features_columns]) 16 17 train_data_scaler = min_max_scaler.transform(train_data[features_columns]) 18 test_data_scaler = min_max_scaler.transform(test_data[features_columns]) 19 20 train_data_scaler = pd.DataFrame(train_data_scaler) 21 train_data_scaler.columns = features_columns 22 23 test_data_scaler = pd.DataFrame(test_data_scaler) 24 test_data_scaler.columns = features_columns 25 26 train_data_scaler['target'] = train_data['target'] 27 28 train_data 29 30 mcorr=mcorr.abs() 31 numerical_corr=mcorr[mcorr['target']>0.1]['target'] 32 print(numerical_corr.sort_values(ascending=False)) 33 34 index0 = numerical_corr.sort_values(ascending=False).index 35 print(train_data_scaler[index0].corr('spearman')) 36 37 new_numerical=['V0', 'V2', 'V3', 'V4', 'V5', 'V6', 'V10','V11', 38 'V13', 'V15', 'V16', 'V18', 'V19', 'V20', 'V22','V24','V30', 'V31', 'V37'] 39 X=np.matrix(train_data_scaler[new_numerical]) 40 VIF_list=[variance_inflation_factor(X, i) for i in range(X.shape[1])] 41 VIF_list 42 43 44 pca = PCA(n_components=0.9) 45 new_train_pca_90 = pca.fit_transform(train_data_scaler.iloc[:,0:-1]) 46 new_test_pca_90 = pca.transform(test_data_scaler) 47 new_train_pca_90 = pd.DataFrame(new_train_pca_90) 48 new_test_pca_90 = pd.DataFrame(new_test_pca_90) 49 new_train_pca_90['target'] = train_data_scaler['target'] 50 new_train_pca_90.describe()

2023-06-16 上传

index0 = numerical_corr.sort_values(ascending=False).index 36 print(train_data_scaler[index0].corr('spearman')) 37 38 new_numerical=['V0', 'V2', 'V3', 'V4', 'V5', 'V6', 'V10','V11', 39 'V13', 'V15', 'V16', 'V18', 'V19', 'V20', 'V22','V24','V30', 'V31', 'V37'] 40 X=np.matrix(train_data_scaler[new_numerical]) 41 VIF_list=[variance_inflation_factor(X, i) for i in range(X.shape[1])] 42 VIF_list 43 44 45 pca = PCA(n_components=0.9) 46 new_train_pca_90 = pca.fit_transform(train_data_scaler.iloc[:,0:-1]) 47 new_test_pca_90 = pca.transform(test_data_scaler) 48 new_train_pca_90 = pd.DataFrame(new_train_pca_90) 49 new_test_pca_90 = pd.DataFrame(new_test_pca_90) 50 new_train_pca_90['target'] = train_data_scaler['target'] 51 new_train_pca_90.describe() 52 53 pca = PCA(n_components=0.95) 54 new_train_pca_16 = pca.fit_transform(train_data_scaler.iloc[:,0:-1]) 55 new_test_pca_16 = pca.transform(test_data_scaler) 56 new_train_pca_16 = pd.DataFrame(new_train_pca_16) 57 new_test_pca_16 = pd.DataFrame(new_test_pca_16) 58 new_train_pca_16['target'] = train_data_scaler['target'] 59 new_train_pca_16.describe() 60 61 from sklearn.ensemble import GradientBoostingRegressor 62 63 from sklearn.model_selection import learning_curve 64 from sklearn.model_selection import ShuffleSplit 65 66 new_train_pca_16 = new_train_pca_16.fillna(0) 67 train = new_train_pca_16[new_test_pca_16.columns] 68 target = new_train_pca_16['target'] 69 70 train_data,test_data,train_target,test_target=train_test_split(train,target,test_size=0.2,random_state=0) 71 72 clf = LinearRegression() 73 clf.fit(train_data, train_target) 74 score = mean_squared_error(test_target, clf.predict(test_data)) 75 print("LinearRegression: ", score) 76 77 train_score = [] 78 test_score = []解释每一句代码的意思

2023-06-16 上传