轴向柱塞泵(马达)回程盘孔与滑靴距离计算程序(python)
#coding:UTF-8
#coding:gbk
import math
import numpy as np
import pandas as pd
# 定义以下变量:
# 转子旋转角度为phi(φ,单位°); 滑靴中心对应失径rho(ρ 单位mm);
# 回程盘滑靴安装孔与滑靴中心角度差dtheta(△θ ,单位°); 滑靴在斜盘上投影坐标(y0,z0)……(yn-1,zn-1);
# 回程盘滑靴安装孔分布圆转角theta(θ,单位°); 回程盘滑靴安装孔与滑靴中心距离ds0……dsn-1;
n=9 #柱塞个数n
dp=28.8 #回程盘上滑靴孔的直径dp(单位mm)
d3=24 #滑靴颈部直径d3(单位mm)
R=50 #转子柱塞孔分布圆半径R(单位mm)
R2=51.3 #回程盘滑靴安装孔分布圆半径R2(单位mm)
gamma=17 #斜盘倾角gamma (γ单位°)
rho=[]
dtheta=np.arange(-6,6,0.001) #定义一个比较大的dtheta范围
ds_angle=pd.DataFrame()
Dds_mn=pd.DataFrame()
for phi in range(361):
y=R*math.cos(math.radians(phi))/math.cos(math.radians(gamma))
z=R*math.sin(math.radians(phi))
theta=math.atan2(z,y)
ds_mn=pd.DataFrame()
ds=[]
for item in dtheta: #第一个循环,找到第一个柱塞滑靴在转子转动一周时,滑靴与回程盘孔之间的角度范围ddtheta
dz2=R2*math.sin(theta-math.radians(item))
dy2=R2*math.cos(theta-math.radians(item))
dz1=R*math.sin(math.radians(phi))
dy1=R*math.cos(math.radians(phi))/math.cos(math.radians(gamma))
ds.append(math.pow(math.pow(dz2-dz1,2)+math.pow(dy2-dy1,2),0.5))
dsi=pd.DataFrame(ds,index=dtheta,columns=['A'])
dn=dsi[dsi.A<=(dp-d3)/2]
dindex=dn.index
dmin=dindex[0]
dmax=dindex[-1]
ddtheta=np.arange(dmin,dmax,0.001)
# print(ddtheta)
for i in range(n): #第二个循环,通过在第一个循环找到ddtheta,再求其他几个柱塞滑靴转动一周时,滑靴与回程盘孔之间的角度范围,并从中找到每个phi对应的最小和最大ddtheta值
dds=[]
for k in ddtheta:
dz2=R2*math.sin(theta+i*2*math.pi/n-math.radians(k))
dy2=R2*math.cos(theta+i*2*math.pi/n-math.radians(k))
dz1=R*math.sin(math.radians(phi)+i*2*math.pi/n)
dy1=R*math.cos(math.radians(phi)+i*2*math.pi/n)/math.cos(math.radians(gamma))
dds.append(math.pow(math.pow(dz2-dz1,2)+math.pow(dy2-dy1,2),0.5))
ddsi=pd.DataFrame(dds,index=ddtheta,columns=['B'])
ddn=ddsi[ddsi.B<=(dp-d3)/2]
ddindex=ddn.index
ddmin=ddindex[0] #△θ最小值
ddmax=ddindex[-1]#△θ最大值
ddmn=pd.DataFrame([ddmin,ddmax],index=["MIN","MAX"])
ds_mn=pd.concat([ds_mn,ddmn],axis=1)
#print(ds_mn)
min_angle=max(pd.Series(ds_mn.loc["MIN"]))
print(min_angle)
max_angle=min(pd.Series(ds_mn.loc["MAX"]))
dz_min=R2*math.sin(theta-math.radians(min_angle))-R*math.sin(math.radians(phi))
dy_min=R2*math.cos(theta-math.radians(min_angle))-R*math.cos(math.radians(phi))/math.cos(math.radians(gamma))
dz_max=R2*math.sin(theta-math.radians(max_angle))-R*math.sin(math.radians(phi))
dy_max=R2*math.cos(theta-math.radians(max_angle))-R*math.cos(math.radians(phi))/math.cos(math.radians(gamma))
ds_phi_min=math.pow(math.pow(dz_min,2)+math.pow(dy_min,2),0.5)
ds_phi_max=math.pow(math.pow(dz_max,2)+math.pow(dy_max,2),0.5)
phi_index=np.array([0])
phi_index[0]=phi
Ddtheta=np.arange(min_angle,max_angle,0.001)
print(Ddtheta)
Dds=[]
for j in Ddtheta:
ddz2=R2*math.sin(theta-math.radians(j))
ddy2=R2*math.cos(theta-math.radians(j))
ddz1=R*math.sin(math.radians(phi))
ddy1=R*math.cos(math.radians(phi))/math.cos(math.radians(gamma))
Dds.append(math.pow(math.pow(ddz2-ddz1,2)+math.pow(ddy2-ddy1,2),0.5))
Dds_phi=pd.DataFrame(Dds,index=Ddtheta,columns=['Dds_phi'])
print(Dds_phi)
Dds_phi_min=Dds_phi.nsmallest(1,'Dds_phi',keep='all')
print(Dds_phi_min)
Dds_phi_min_index=Dds_phi_min.index[0]
print(Dds_phi_min_index)
Dds_phi_min_ds=Dds_phi_min.iloc[0,0]
print(Dds_phi_min_ds)
data=pd.DataFrame([min_angle,max_angle,ds_phi_min,ds_phi_max,Dds_phi_min_index,Dds_phi_min_ds],columns=phi_index,index=["min_angle","max_angle","min_ds","max_ds","Dds_phi_dtheta","Dds_phi_min"])
print(data)
ds_angle=pd.concat([ds_angle,data],axis=1,)
ds_360=ds_angle.T
print(ds_360)
ds_360.to_excel("D:\Ddss.xlsx")
轴向柱塞泵(马达)回程盘孔与滑靴距离计算程序(python)相关推荐
- VOC数据集制作 滑窗切分图片python
1.labelme画标签转标签 这一步见链接labelme转标签 2.python滑窗切分图片 上一步生成的标签是单通道的,我们所需要的PASCAL VOC的数据集的标签也是单通道8位图,所以切分的时 ...
- 利用python进行数据分析微盘_谁有有《利用Python进行数据分析》pdf 谢谢
展开全部 Python[1] (英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机62616964757a686964616fe4b893e5b19e31 ...
- 21天python百度网盘_《21天学通Python》PDF 高清版百度网盘下载
提取码:gr0z 内容简介 · · · · · · <21天学通Python>全面.系统.深入地讲解了Python编程基础语法与高级应用.在讲解过程中,通过大量实际操作的实例将Pytho ...
- python网络爬虫与信息提取嵩天百度网盘_基于MOOC嵩天《Python网络爬虫与信息提取》视频学习记录——第一周:requests库...
1.requests库入门 requests的get( )方法 爬取百度网页实例: import requests r = requests.get("http://www.baidu.co ...
- 像计算机科学家一样思考python 百度网盘_像计算机科学家一样思考Python PDF_Python教程...
资源名称:像计算机科学家一样思考Python PDF 第1章 程序之道 1 1.1 Python编程语言 1 1.2 什么是程序 3 1.3 什么是调试 3 1.4 语法错误 3 1.5 运行时错误 ...
- 派克轴向柱塞泵PV系列
派克轴向柱塞泵PV系列 Parker派克PV系列轴向柱塞泵有带标准压力调节器和带功率调节器两种选择.最大排量从16至270ml/rev,额定工作压力为350bar,最低转速为每分钟300转,泄油口朝上 ...
- matlab轴向柱塞泵动力学仿真,基于虚拟样机的轴向柱塞泵柱塞副性能研究
副泄漏量则采用等效液阻模型构建[8],其泄漏量q s 和q v 如下所示. ()(c d s d s d s P P l h r r d h d q ??+= ] 128ln 6[31243 4μπ) ...
- 机械硬盘-空气盘与氦气盘的区别
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.硬盘是什么? 二.空气盘与氦气盘的区别 1.容量 2.功耗 3.温度 4.噪音 5.性能 总结 前言 随着用户对数 ...
- 计算机的u盘显示桌面,U盘图示在我的电脑显示不出?
U盘图示在我的电脑显示不出?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! U盘图示在我的电脑显示不出? 试一下在开始- ...
最新文章
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本(转)
- BestCoder Round #65 B C D || HDU 5591 5592 5593
- 【转】多线程Core Data
- 返回content-length=0问题解决
- 【MATLAB】进阶绘图 ( Boxplot 箱线图 | boxplot 函数 | Error Bar 误差条线图 | errorbar 函数 )
- windows下tomcat日志输出至catalina.out文件
- C++(七)——多态
- echarts折线图怎么从y轴开始_基于echarts的双y轴实时更新折线图
- 【Tomcat】安装Tomcat服务器Tomcat的目录结构
- Unix domain socket IPC
- 单片机c语言期末考试题(a)的答案,单片机C语言期末考试题(A).doc
- CSS3中的过渡、动画和变换
- java换行输出的几种方式
- python 广告联盟_利用京东联盟API获取自定义推广链接
- 金额转换,阿拉伯数字转换成中国传统形式
- linux终端安装搜狗输入法rpm,Linux下deb包安装工具(附带安装搜狗输入法)
- 来看一看2019年3月中国电商+手游平台用户口碑排行榜
- 腾讯课堂老师可以看到学生本人吗?
- Android 应用多开/分身检测
- HIT 软件构造 lab3实验报告