PreScan笔记(1)——入坑之简单介绍和Demo
文章目录
- PreScan 小白入坑
- 1. PreScan简单介绍
- 2. First Demo
- 简单介绍实验的基本四步
- 具体流程+与MATLAB连接过程中的问题
- 参考
PreScan 小白入坑
本人最近才接触PreScan,最近也略微熟悉了GUI和相关步骤。先给自己定个目标,之后每学一点就写一点。
PreScan的安装我就不想写了,百度直接搜索就可以了,非常简单。(注意这只是单独的PreScan安装,之后我会讲到一个常见的与MATLAB连接过程中的问题)
小白虽想入坑,但难免会跳错坑。请相信过程,你会走出来的!
(如果官方手册下不到的话大家也可以参考PreScan GUI里面的帮助文档,个人感觉内容都一样的…)
1. PreScan简单介绍
PreScan has been developed: a development and evaluation environment in which smart cars can actually see the surrounding in which they are driving and can subsequently respond to it.
PreScan是一款关于汽车的研发和评估软件,在这里,智能汽车可以实际看到驾驶时周围的环境并作出响应。
这里的PreScan GUI只是扮演着预处理器的一种角色,而核心的控制部分则是由MATLAB负责,两者的连接依靠PreScan生成的compilation sheet。
PreScan广泛用于智能汽车系统,比如现在的ADAS(Advanced Driver Assistance Systems高级驾驶辅助系统),自动巡航系统等,也可以用于如今的自动驾驶领域,即涉及更多的传感器。(其他详细介绍可以参考PreScan官方手册。)
2. First Demo
简单介绍实验的基本四步
- Build Scenario
- Modeling Sensor Systems
- Adding Control Systems
- Running an Experiment
第一步应该是指添加基本的道路原件,背景,路标之类的;第二步应该是往各种汽车中添加传感器,比如AIR传感器,雷达传感器,摄像头等;第三步是在MATLAB中加入一些自定义的控制模块来控制车的速度,偏向角,坐标等;最后一步就是在VisViewer中跑了,这里可以选择便于可视化的多种视角。(以上只是我到目前为止的理解,有错误望指正!)
具体流程+与MATLAB连接过程中的问题
本节参考的是手册中5.4节,example: first start,我会搬运一些重要的步骤并且讲一个我遇到的编译器相关的问题。
前提:先前在安装Prescan的时候,程序会提示你用MATLAB集成安装。这里最好用2013~2017的版本,因为这是官方测试过的版本,应该是比较稳定吧。
步骤:如图1,先新建一个实验,起一个合适的名称,文件会自动存储到C:\Users\Public\Documents\Experiments,之后涉及到的simulink文件也从该路径找就可以了。
之后,选择一个Underlay的类型,如图2所示。
加入背景之后,我们就可以开始添加道路了,可以自己组建想要的道路工况。手册上只添加了一块环岛路,如图3。
接着点击上图标蓝的图标,画出想要的路径,如图4中的红线部分。
紧接着的重要一步是把actors中喜欢的车辆放到路线上,并加上AIR传感器和Visu Aids里面的类似于获取驾驶视角的模块,如图5,车头前的绿色区域代表传感器的范围(可以自己设定)。
当然,手册上最后还放上去了一辆没有任何作为的车,这里就暂时省略了。
搭建完了场景和传感器,我们就可以生成能被MATLAB处理的编译文件(compilation sheet)了,这些文件的扩展名是.slx(MATLAB Simulink文件的扩展名)。具体步骤如图6。
第一步是parse(个人理解为检查语法,和场景搭建是否合乎逻辑),如果任何一个环节出现错误,可以按照提示来纠正。接下来就是build成simulink文件,最后点击图中标红的按键,Invoke Simulink Run Mode来开启MATLAB。MATLAB与PreScan连接好之后会有如下提示:
=================================================
MATLAB has been configured for PreScan R 8.5.0
=================================================
PrescanPath : C:\Program Files\PreScan\PreScan_8.5.0
PrescanBuild : C:\Program Files\PreScan\PreScan_8.5.0
PrescanCoreBuild : C:\Program Files\PreScan\PreScan_8.5.0
PrescanData : C:\Program Files\PreScan\PreScan_8.5.0
UDLibFolder (CU) : C:\Users\Public\Documents\PreScan\UDLibElements
UDLibFolder : C:\Users\Public\Documents\PreScan\UDLibElements
GenVehFolder : C:\Users\Public\Documents\PreScan\GenericVehicles
GenActFolder : C:\Users\Public\Documents\PreScan\GenericModels
ExperimentRepository : C:\Users\Public\Documents\Experiments
Plugins enabled : * GIDAS Importer* IDC Importer Plugin* Intelligent Traffic Module Plugin* PBCameraPlugin* RemoteViewerPlugin* Scene Support* V2X Plugin* Vissim
C compiler : Microsoft Visual C++ 2015 Professional (C)
S-Function location : * C:\Users\84775\AppData\Roaming\TNO\PreScan\8.5.0\sfunction_R2016a* C:\Program Files\PreScan\PreScan_8.5.0\bin
我第一次配置的时候因为电脑上之前装的是Visual Studio 2017和MATLAB 2016a,显然,MATLAB2016不可能认出2017的VS编译器,此时就会出现如下图的问题。
搜索了一些博客对此问题的讲解之后,我安装了VS2015,之后我先用mex -setup
检查了下C编译器。如果有编译器的话MATLAB会出现以下结果。
>> mex -setup
MEX 配置为使用 'Microsoft Visual C++ 2015 Professional (C)' 以进行 C 语言编译。
警告: MATLAB C 和 Fortran API 已更改,现可支持包含 2^32-1 个以上元素的 MATLAB 变量。不久以后,您需要更新代码以利用新的 API。您可以在以下网址找到相关详细信息:http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html。要选择不同的语言,请从以下选项中选择一种命令:mex -setup C++ mex -setup FORTRAN
如果想知道MATLAB查找C编译器的过程,可以输入mex -setup -v
。
回到之前的步骤上,现在我们就可以打开simulink文件开始跑了。
点击Mazda RX8模块,我们可以看到里面的内容,一个是self模块,一个是我们自己添加的AIR传感器,我这里按照手册的要求加入了一个MUX模块和Display单元,它们能帮我们更好的看出具体数据的变化。
点击开始运行按钮之后,PreScan的VisViewer会出现动画,选一个自己喜欢的视角就能看到汽车在跑了,别忘了记住要设置运行时间!!可以用如下代码(在下一篇的博客里我应该就会写到跟data Model API相关的知识)
Models=prescan.experiment.readDataModels('C:\Users\Public\Documents\Experiments\Experiment1.pb')
prescan.experiment.runWithDataModels(Models, 'StopTime','10')
这里的C:\Users\Public\Documents\Experiments\Experiment1.pb代表相应的.pb文件所在路径,就和.slx文件在一个目录下。这样一来,我们就能控制运行时间了。
最后附上VisViewer在human_view下的截图
参考
PreScan Manual
PreScan笔记(1)——入坑之简单介绍和Demo相关推荐
- python学习笔记(一)Python 简单介绍
Python学习笔记(一)Python 简单介绍 Python介绍 Python简介 Python应用领域 Python是解释型的语⾔ 编译和解释的区别是什么? 编译型vs解释型 编译型 解释型 Py ...
- 肝货满满!CV学习笔记:入坑必备
知乎:云时之间 链接:https://zhuanlan.zhihu.com/p/102044405 编辑:王萌 作者的话 最近因为一些原因被安排去做关于目标跟踪的一些工作,对我来说可谓是一个很大的挑战 ...
- mmdetection 使用笔记 01: 安装与简单的推理demo
mmdetection 使用笔记 01: 安装与简单的推理demo mmdetection是来自商汤和港中文联合实验室openmmlab推出的目标检测工具包,与其同系列的还有基础视觉包mmcv,图像分 ...
- Hadoop自学笔记(二)HDFS简单介绍
1. HDFS Architecture 一种Master-Slave结构.包括Name Node, Secondary Name Node,Data Node Job Tracker, Task T ...
- Hadoop自学笔记(三)MapReduce简单介绍
1. MapReduce Architecture MapReduce是一套可编程的框架,大部分MapReduce的工作都能够用Pig或者Hive完毕.可是还是要了解MapReduce本身是怎样工作的 ...
- 关于TeamViewer远程桌面的呼出和呼入连接报告简单介绍
前一段时间,因为工作的关系,接触到了一款远程桌面软件,叫TeamViewer,用到最多的功能就是呼入和呼出连接报告的功能,下面就跟分享一下心得吧. 1.访问连接报告 以下是关于访问连接报告的详细步骤操 ...
- [区块链笔记1] 入坑区块链 智能合约solidity基础
以太坊是一个分布式计算网络,提供了运行智能合约的分布式平台. 智能合约是在以太坊虚拟机上运行的应用程序. 以太坊拥有多种高级语言可以用来编写智能合约,最流行的是solidity,基于javascrip ...
- [Python] Basemap入坑手册
Basemap入坑手册 2021-07-19 换了电脑装basemap报错后一直没更新,今天本来想怎么着也给他装上,才发现这个项目从2016年就换主了,basemap被维护到2020年. 但是现在都2 ...
- 正则表达式从入门到入坑
正则表达式从入门到入坑 入坑前先介绍两个辅助网站: 正则表达式测试网站:https://regex101.com 正则表达式思维导图:https://regexper.com 正则基础(入门) 1.元 ...
- fifaol4服务器位置,fifaonline4 不花钱能不能玩?给新手解答一下,考虑清楚在入坑。...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 最近很多人经常问我,不花钱能不能玩? 在这里统一说一下 我只能说,这游戏不充钱也可以玩的很厉害,但不会玩的很舒服. 别人前锋都奔着双速135走了,你的中后 ...
最新文章
- 20分钟学会CMake
- python flask分页_flask 分页
- Socket阻塞与非阻塞,同步与异步、I/O模型
- Kube Controller Manager 源码分析
- 华为又遭重击:谷歌暂停提供 Android 支持,新出售手机不能使用 Google 服务
- OpenCV教程(42) xml/yaml文件的读写
- 输入阻抗和输出阻抗概念
- 举例mysql中group_concat()函数使用
- Docker容器之网络管理、端口映射、容器间的互联、Dockerfile完成镜像封装
- 操作MySQL出错提示“BLOB/TEXT column used in key specification without a key length”解决办法
- 数据库的实例化操作——员工信息的查询——简单表查询(二)
- 东京丛林 扮演动物的游戏
- 苹果手机使用爱思助手安装ipa软件
- 海洋CMS火车头数据采集教程-自动配置采集发布模块教程
- Unity小技巧——Inspector中插入数组元素
- 配置AD域环境、OU、GPO
- [RK3399] [Android7.1] UAC配置,使用USB转音频喇叭播放声音
- JAVACV实现视频帧添加中文水印
- cookie和session的反反爬应用
- sql嵌套查询慢的原因