AutoEM
n5321 | 2024年11月3日 17:48
考虑做BLDC的AutoEM,时间过去了一年,感觉自己的认知水平当然很不一样了。
要做成一个什么样的AutoEM呢?用什么工具?!Python or Matlab?
matlab要不要升级到最新的版本里来?2024年用2015的版本,好像是过时了很多!Ansys呢?要考虑用新的版本吗?Ansys似乎是用老的版本更好一些。
如果继续用matlab,怎么来开发?最后会开发成什么样子?要做怎样的功能布局?
算了,暂时还是先用matlab再说,matlab在科学计算上本来就是很牛逼的,自己对matlab也熟悉到了那个程度。
sample,暂时考虑用一个B5665的冲片来做这个事情。
最早的东西,当然还是做表!先大概还是要搞一个可以用的数据结构出来。
关于Ansys的文档结构:
一个Ansys的文档是通过后缀名链接到Ansys的程序的。不过仿真软件,本质上是一个计算工具,一个计算器。Ansys的文档是程序需要你提供的一大堆参数。所以可以用一个文本文档把他打开。
$begin 'AnsoftProject'
Created='Tue Apr 22 09:38:18 2014'
FileOwnedByWorkbench=false
Product='Maxwell'
NextUniqueID=0
MoveBackwards=false
$begin 'Desktop'
Version(16, 0)
InfrastructureVersion(1, 0)
$end 'Desktop'
$begin 'Maxwell3DEnvironment'
Version(1, 0)
$end 'Maxwell3DEnvironment'
打开以后,可以看到大概是这种结构。这有一点点像是HTML文档。$begin&$end组织成了一个个的block,估计是跟程序的DLL形成了一一对应的关系,方便计算。
他的文本结构特点包括:
分层嵌套:数据在逻辑上被分成不同的层次,每一层用特定的标记(例如
$begin
和$end
)来定义开始和结束。块标签:每个数据块都有一个标题,用单引号括起来,例如
'AnsoftProject'
、'Desktop'
、'Maxwell3DEnvironment'
键-值对
:在每个块内,包含不同的键-值对,用来存储具体的配置信息。例如:
Product='Maxwell'
Version(16, 0)键和值通常以
=
分隔,值可以是字符串、数字或版本号。
标记形式:用
$begin
表示数据块的开头,用$end
表示数据块的结尾。每个$begin
和$end
标签后面紧跟对应块的名称以便匹配。
这个文档属实是有一点长。大概是有1万多行,方便机器读取数据,但是完全不方便人来查看数据。
可是本质上,这个文档要包含完整的电机设计方案!
一套电机的电磁设计方案要有三个方面的数据:
- 设计参数:工程师给定的参数,比如定转子冲片的尺寸,叠厚,绕组的方案等等。
- 工艺参数:受限于生产、测试的工艺过程参数,比如绕组端高,定转子的叠压系数,测功时候的温升等等。
- 餐料参数:材料参数里面最典型的,应该是矽钢片的BH曲线和BP曲线,如果矽钢片材料参数中没有BP参数,你的计算结构里面就可能没有铁损。
他自己用的是name value unit结构。应该先做一个这样的表格。