机械原理课程设计报告机器马 第8页

机械原理课程设计报告机器马 第8页
/以下为三角形构件参数的计算
 double mtri=0,ptri=0;
  double s;
 
机械原理课程设计
 

//若给定参数为三个顶点坐标,则首先用下述公式计算各边长
/*for(i=0;i<=2;i++)       
{
tri[i].len[0]=sqrt(pow((tri[i].fix[0][0]-tri[i].fix[1]
[0]),2)+pow((tri[i].fix[0][1]-tri[i].fix[1][1]),2));

tri[i].len[1]=sqrt(pow((tri[i].fix[1][0]-tri[i].fix[2]
[0]),2)+pow((tri[i].fix[1][1]-tri[i].fix[2][1]),2));

tri[i].len[2]=sqrt(pow((tri[i].fix[2][0]-tri[i].fix[0]
[0]),2)+pow((tri[i].fix[2][1]-tri[i].fix[0][1]),2));
}*/ 
//因为 ADAMS 可以方便地量出三角形边长,所以可直接用下
式计算
for(i=0;i<=3;i++)       
{
      tri[i].den= density_a; 
//选择材料密度,机构优化时参数修改及材料选择使用
s=(tri[i].len[0]+tri[i].len[1]+tri[i].len[2])/2;              
//海伦公式求三角形体积
tri[i].mass=sqrt(s*(s-tri[i].len[0])*(s-tri[i].len
[1])*(s-tri[i].len[2]))*tri[i].thk*tri[i].den;
tri[i].px=(tri[i].fix[0]+tri[i].fix[1]+tri[i].fix
[2])/3;         
//求三角形重心横坐标
  }
  cout<<setprecision(4);       
  cout<<"各三角形杆件顶点横坐标值为:"<<endl;     
//输出三角形坐标值  for(i=0;i<=3;i++)
  {
 for(j=0;j<=2;j++)
  cout<<tri[i].fix[j]<<'\t';
 cout<<endl;

  }
 
机械原理课程设计
 
  cout<<"各三角形杆件的质量为:"<<endl;           
//输出三角形质量
  for(i=0;i<=3;i++)
  cout<<tri[i].mass<<'\t';
  cout<<endl;
  cout<<"各三角形杆件的重心横坐标为:"<<endl;     
若图片无法显示请联系QQ3249114,本论文免费,转发请注明源于www.751com.cn
  } 
  ptri=k/mtri;
  cout<<" 上 述 所 有 三 角 形 构 件 总 质 量 及 质 心 位 置 为 :
mtri="<<mtri<<","<<"ptri="<<ptri;
  cout<<endl;  cout<<endl;  cout<<endl; 
//以下为圆形构件参数的计算 

  double mcir=0,pcir=0;
  for(i=0;i<=5;i++)
  {
cir[i].den= density_a;
 
机械原理课程设计
 
cir[i].mass=3.1416*cir[i].radii*cir[i].radii*cir
[i].thk*cir[i].den;
       cir[i].px=cir[i].fix;
  }
  cout<<"各圆形构件的质量为:"<<endl;
  for(i=0;i<=5;i++)
  cout<<cir[i].mass<<'\t';
  cout<<endl;
  cout<<"各圆形构件的重心横坐标为:"<<endl;
  for(i=0;i<=5;i++)
  cout<<cir[i].px<<'\t';
  cout<<endl;
  double l=0;
  for(i=0;i<=5;i++)
  {
  mcir+=cir[i].mass;
  l+=cir[i].px*cir[i].mass;
  }
  pcir=l/mcir;
  cout<<" 上 述 所 有 圆 柱 形 构 件 总 质 量 及 质 心 位 置 为 :
mcir="<<mcir<<","<<"pcir="<<pcir;
  cout<<endl;  cout<<endl;  cout<<endl;

//以下为长方形构件参数和计算

  double mrec=0,prec=0;
  for(i=0;i<=8;i++)
  {
rec[i].den= density_a;
rec[i].mass=rec[i].len*rec[i].wid*rec[i].thk*rec
[i].den;
       rec[i].px=(rec[i].fix[0]+rec[i].fix[1])/2;
}
 
机械原理课程设计

  cout<<"各长方形构件的质量为:"<<endl;
  for(i=0;i<=8;i++)
  cout<<rec[i].mass<<'\t';
  cout<<endl;
  cout<<"各长方形构件的重心坐标为:"<<endl;
  for(i=0;i<=8;i++)
  cout<<rec[i].px<<'\t';
  cout<<endl;
  double n=0;
  for(i=0;i<=5;i++)
  {
  mrec+=rec[i].mass;
  n+=rec[i].px*rec[i].mass;
  }
  prec=l/mrec;
  cout<<" 上 述 所 有 圆 柱 形 构 件 总 质 量 及 质 心 位 置 为 :
mrec="<<mrec<<","<<"prec="<<prec;
  cout<<endl;  cout<<endl;  cout<<endl;
//以下为头、颈等部分质量及重心位置的计算
  double mneck,mhead,maxis,mcam;       
//颈部,头部,主轴,带动颈部的凸轮
若图片无法显示请联系QQ3249114,本论文免费,转发请注明源于www.751com.cn        
//颈部的质量及重心位置计算,颈部为长方体,参数可直接读
出,初步设密度与四肢相同。
  pneck=(0.8+1.6)/2;
 mhead=3.1416*(0.14*0.14+0.14*0.12+0.12*0.12)*0.68/3*d
ensity; 
//头部看作圆台,其体积由公式 PI*(R^2*Rr*r^2)*h/3 求得。
  phead=(1.6+2.2)/2;
Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有