如果你也在辛苦地找一款免费的容易使用的FTA工具,也许本文提供的转化工具对你有用。
背景
寻找界面友好的FTA工具已经有一段时间了,但遗憾的是,除了几十万的商业工具外,其他的几款工具是要么功能受限,要么就是用户界面不友好,经常崩溃。
我的要求其实很简单,
- 能做100+节点以上的FTA分析;
- 程序要健壮,不要经常崩溃;
- 增删节点要简便,界面要流畅,不卡顿;
- 能提供失效率计算;
- 能做最小割集分析,或者其他分析
搜寻结果
- OpenFTA
很久没有人在维护的一个项目了,基本功能足够强大。
但不程序不健壮,增删也很不方便。
安装兼容性设置:
Win7及以上的Windows系统中,右击OpenFTASetup.exe 在兼容性标签中,选择以Windows XP(service pack3)模式兼容运行,可以解决安装过程报错问题。
如果仍然无法安装,可以下载下面提到的新编译的绿色OpenFta版本,步骤是:
① 下载并解压zip文件;
② 修改OpenFTA.bat文件中JAVA_HOME为本地的JRE路径(仅支持32bit的x86 JRE/JDK版本,不要设置为x64版本);
③ 运行OpenFTA.bat启动OpenFTA
使用兼容性设置:
Win7及以上的Windows系统中,右击OpenFTA.exe在兼容性标签中,选择以Windows Vista模式兼容运行,可以有效改善OpenFTA程序崩溃。
- FreeFTA
...
- OSATE
...
- ISOGraph
...
- ALD等在线工具
...
应用Freemind工具
- Freemind
Freemind是一款开源的、健壮的思维导图工具。
使用它可以快速的建立一棵树,在需要的中间节点上,增加AND/OR等标记后,也变可以生成一颗故障树。
最重要的是,它界面友好的,拖拽、复制、插入、删除可以手工毫秒级操作(不能再夸它了)。
- 扩展Freemind节点表示功能
假设希望生成下图的FTA树(局部),
可以在Freemind中,作以下思维树(局部),
保存后,使用fta_maker工具,就可以生成整个FTA。
- Freemind扩展为FTA编辑工具的使用注意
- 在Freemind建立的树结构与期望的FTA树没有差异,只是没有AND与OR节点;
- AND和OR,在Freemind中使用中间节点末尾的“*”和“+”来生成;
- 即使某个中间节点仅有一个子节点,也要使用“*”和“+”后缀,以区分其为中间节点,非叶子节点;
- 叶子节点不使用“*”和“+”后缀;
- 叶子节点长度不得超过13个字母(含空格);
- 使用英文和数字描述(OpenFTA对汉字支持不良);
- (仅fta_maker V0.3及以上版本支持)
在非叶子节点中使用 " ^ " 字符开头,以导出该节点为根的子树;
形如 "^core fault+"将产生以"core fault+ "为根节点的子树;
希望导出子树的节点的字符数不应超过13个字母; - (仅fta_maker V0.3及以上版本支持)
在叶子节点( " ^ " 或" > "开头的节点不被识别为叶子节点)中使用" > "字符开头,以表示导入子树;
形如 ">core fault"将导入前述 "^core fault+"产生的子树;
注意字符要严格匹配(不包含对^>+*的匹配); - (仅fta_maker V0.3及以上版本支持)
在叶子节点中使用" # "增加对叶子节点的描述;
形如 "xxx F # xxx description. "将产生对"xxx F "叶子节点的"xxx description. "描述。
具体工具使用方法,参考下一小节。
FTA工具准备、编辑、格式转化、计算、打印
- 所需工具
- OpenFTA
下载地址:https://pan.baidu.com/s/1GuuJLB2T_1WkSLEyTmzjiA
或,
官网下载:http://www.openfta.com/ - OpenFTA新编译版(需要按照本机Java路径修改bat文件中的java_home配置)
链接:https://pan.baidu.com/s/1Qfaq9B71KZL44XdbQJ4VLQ
提取码:cj5r - Freemind
下载地址:https://pan.baidu.com/s/1k-tnFyXnB5PxntBePTTRrQ
或,
官网下载:http://freemind.sourceforge.net/wiki/index.php/Download - JDK(如果机器上已经有JRE 1.7及以上,无须下载)
下载地址:https://pan.baidu.com/s/1j7VLu_31LVEqTreFVqaIug
或,
官网下载:https://www.oracle.com/technetwork/java/javase/downloads/index.html - fta_maker V0.3
下载地址:https://pan.baidu.com/s/1EXXUph6I6IlDUvkA7XwCCQ
提取码: nhsu
- 环境配置
- JRE环境
按照以下顺序查找到PATH环境变量
右击我的电脑 / 属性 / 高级 / 环境变量 / 系统变量
把安装好JDK后的JRE bin路径,或者已有的JRE bin路径(1.7及以上),放到PATH值的最前面,分号分割。
比如,我的电脑JRE的bin在以下路径,
C:\Program Files (x86)\Java\jre1.8\bin
系统变量中Path原为
d:\cygwin\bin;asdfafdasdfafdaf
修改改为,
C:\Program Files (x86)\Java\jre1.8\bin;d:\cygwin\bin;asdfafdasdfafdaf
然后保存。按住Windows键+R呼出运行框,输入CMD,输入 java -version 查看设置成功与否,
$ java -version
java version "1.8.0_192"
Java(TM) SE Runtime Environment (build 1.8.0_192-b12)
Java HotSpot(TM) Client VM (build 25.192-b12, mixed mode)
- 使用手顺
- 安装OpenFTA、Freemind、JDK;
- 使用Freemind建立FTA树,xxx.mm;
- 解压fta_maker.zip到d:\fta_maker;
- 拷贝xxx.mm到d:\fta_maker;
- 呼出CMD,切换到d:\fta_maker路径;
- 执行fta_maker.bat xxx.mm; 生成xxx.fta和xxx.ped
- 打开OpenFTA,并使用OpenFTA打开xxx.fta;
- 使用OpenFTA File/Print 打印FTA为PDF文件,继而可以通过Photoshop转为PNG(树很大的话,注意导入分辨率PSI);
- 使用OpenFTA计算最小割集和失效率(默认叶子失效设定为0.1fit,可以通过OpenFTA数据库编辑具体失效率)。
- 处理和分析结果例
- Freemind MM文件
2. OpenFTA打印结果
3. FTA计算分析(MCS,最小割集分析部分)