杆件常见受力情况分析(C#课设)
C#课程
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
说明书
杆件常见受力情况分析
院系 专业
班号
学号
姓名
指导教师
沈阳航空航天大学课程设计说明书 摘要
摘 要
日常生活中比较常见的问题为基本杆件受三种外力时,其力学性质分析。其中基本内容为弯矩图的绘制,继而进行相应的挠度或正应力求解。本程序中应用了相应MDI多窗体,控件操作,GDI+绘制图形,多选框确定加载力的类型,综合运用了For循环、数组操作、类的创建与应用。本程序是将材料力学中不易计算及图形问题与C#结合起来的综合性程序;
关键词 GDI+ 数组操作 材料力学
沈阳航空航天大学课程设计说明书 目录
目 录
第1章 引言…………………………………………………………1
1.1 研究背景…………………………………………………………………1
1.2 计划任务…………………………………………………………………1 第2章 功能设计…………………………………………………………2
2.1 理论公式…………………………………………………………………2
2.2 功能作用…………………………………………………………………2 第3章 程序模块…………………………………………………………3 第4章 程序代码…………………………………………………………5 第5章 程序设计总结……………………………………………………8 参考文献 ………………………………………………………………………………9
沈阳航空航天大学课程设计说明书 第一章 引言
第一章 引 言
1.1 研究背景
今天,计算机技术和互联网络的飞速发展把社会的信息化进程推向了一个全 新的阶段,信息的传递与交流己经成为整个现代社会生活运作的重要基础,电子 可读文本大量涌现并成为网络时代主要的信息载体和人们的生活中不可或缺的一 部分。随着信息化时代的来临,自然语言处理技术已逐渐成为一项大众化的迫切 需求,计算语言学的研究也越来越受到人们的重视。
1.2 计划任务
如何根据杆件受力情况获得相应计算路径是本程要解决的关键
1
沈阳航空航天大学课程设计说明书 第二章 功能设计
第二章 功能设计
2.1 理论公式
根据公式M=F*x+q*x*x/2+m;A=M*y/I
其中
F—集中力
q—分布载荷
m—力偶矩
x—据相应零点距离
A—正应力
y—截面沿力方向高度
E—弹性模量。
I—惯性矩
通过以上公式的运算,可以计算出相应的弯矩,挠度,正应变;
2.2 功能作用
此软件能够非常人性化的通过材料力学公式计算不同情况力下的弯矩和挠度,还可以求得不同力下杆件的正应力,可以说能能够解决我们日常生活中遇到的许多问题,通过该软件的运用可以简便的计算诸多问题。
2
沈阳航空航天大学课程设计说明书 第三章 程序模块
第三章程序模块
1.当悬臂梁受到三种外力的情况下得到的弯矩图形和弯矩大小。
图1 悬臂梁三种作用力下的情况
2.当悬臂梁受到两种外力情况下的弯矩图形和弯矩大小。
图2 悬臂梁两种力作用下的情况
3. 当简支梁只受到一种外力情况下的弯矩图形和弯矩大小和正应力大小。
3
沈阳航空航天大学课程设计说明书 第三章 程序模块
图3 简支梁一种作用力的情况
4 .当简支梁受到两种外力情况下的弯矩图形和弯矩大小和正应力大小还有杆件的危险截面所处的位置。
图4 简支梁两种作用力下的情况
4
沈阳航空航天大学课程设计说明书 第四章 程序代码
第四章 程序代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace 杆件简单力学性质分析
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
float[] m1, m, m2, m3; double[] w, w1, w2, w3;
private void Form2_Paint(object sender, PaintEventArgs e)//绘制悬臂梁
{
Graphics g = e.Graphics;
g.TranslateTransform(30, 60);
Pen pen1 = new Pen(Color.Black, 1);
Pen pen2 = new Pen(Color.Black, 2);
g.DrawLine(pen1, 0, 0, 0, 50);
g.DrawLine(pen1, 0, 10, -10, 20);
g.DrawLine(pen1, 0, 20, -10, 30);
g.DrawLine(pen1, 0, 30, -10, 40);
g.DrawLine(pen2, 0, 25, 120, 25);
}
private void checkBox_CheckedChanged(object sender, EventArgs e)//确定
作用力类型
{
CheckBox ck = (CheckBox)sender;
if (ck == checkBox1)
{
if (ck.Checked) groupBox2.Enabled = true;
else groupBox2.Enabled = false;
}
if (ck == checkBox2)
{
if (ck.Checked) groupBox3.Enabled = true;
else groupBox3.Enabled = false;
}
if (ck == checkBox3)
{
5
沈阳航空航天大学课程设计说明书 第四章 程序代码
if (ck.Checked) groupBox4.Enabled = true;
else groupBox4.Enabled = false;
}
}
int l;
private void button1_Click(object sender, EventArgs e)//确定杆件参数
{
l = int.Parse(textBox1.Text); groupBox5.Enabled = true;
}
int F, x1;
private void button2_Click(object sender, EventArgs e)//确定力F相应参数
{
m1 = new float[l + 1];
w1 = new double[l + 1];
F = int.Parse(textBox4.Text);
x1 = int.Parse(textBox5.Text);
if (x1 > l)
{
MessageBox.Show("数值过大\n请重新输入");
textBox5.Text = null; return;
}
Fs f1 = new Fs(F, x1);
for (int i = 0; i <= l; i++)
{
f1.jisaun(i);
m1[i] = (float)f1.Mi;
w1[i] = f1.naodu(i);
}
}
int Mm, x3;
private void button4_Click(object sender, EventArgs e)//确定力偶M相应参数
{
Mm = int.Parse(textBox9.Text);
x3 = int.Parse(textBox10.Text);
if (x3 > l)
{
MessageBox.Show("数值过大\n请重新输入");
textBox10.Text = null; return;
}
m3 = new float[l + 1];
w3 = new double[l + 1];
mm lm = new mm(Mm, x3);
for (int i = 0; i <= l; i++)
{
lm.jisaun(i);
m3[i] = lm.Mm;
6
沈阳航空航天大学课程设计说明书 第四章 程序代码
w3[i] = lm.naodu(i);
}
}
class Fs
{//集中力F产生的弯矩
int M, F, a;double w;
public Fs(int F, int a)
{
this.F = F; this.a = a;
}
public double naodu(int x)
{
if (x < a)
w = F * Math.Pow(x, 3) / 6;
else w = F * a * a * (3 * x - a) ;
return w;
}
public void jisaun(int x)
{
if (x < a)
{
M = F * (a - x);
}
else M = 0;
}
public int Mi
{
get
{
return M;
}
set
{
M = value;
}
}
}
private void radioButton_CheckedChanged(object sender, EventArgs e)
{
RadioButton rb = (RadioButton)sender;
if (rb == radioButton1)
if (rb.Checked) label2.Text = "圆形截面直径(mm):";
if (rb == radioButton2)
if (rb.Checked)
label2.Text = "沿力方向矩形高度(mm):";
7
沈阳航空航天大学课程设计说明书 第五章 程序设计总结
第五章程序设计总结
通过C#中的一些技术要点做出弯矩图和求出不同情况下的弯矩和挠度,利用材料力学公式把一系列参数带入进行运算。并且得到想要的弯矩图像和在不同情况下的力学要求。通过本次课设我学到了很多,同时也学会了细心与耐心的培养,我想这将在将来的工作和社会旅途中会气到很大的帮助。更多的是团队的合作不仅是完成工作的前提,同时也使我明白了如何与他人配合,如何与他人相处。
此次课程设计,通过自己的努力和组长的指导,初步完成。在此,特别感谢组长的帮助才可顺利完成此次任务,希望可以得到老师的认可,最终感谢老师的讲解,向**老师表示敬意,特此感谢~
8
沈阳航空航天大学课程设计说明书 参考文献
参考文献
1 . 郑阿奇,C#课程设计教程,梁敬东主编。-北京;机械工业出版社,2007.3 2 . 刘鸿文,材料力学I第五版,高等教育出版社,2010,6。
3. Herbert Schildt,C#3.0完全参考手册,清华大学出版社,2010,3。
9