0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【飞凌RZ/G2L开发板试用体验】第二篇 基于飞凌RZ/G2L开发板的波形显示系统的搭建

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-10-25 10:41 次阅读

本文来源电子发烧友社区,作者:h1654155285.8644, 帖子地址:https://bbs.elecfans.com/jishu_2296730_1_1.html


本人收到开发板后,进行了基础功能的测试,便根据所申请内容进行课题开发。本开发板支持MIPI接口的LCD显示器,但是本人没有该接口的显示,只能用一个串口屏代替该接口的显示器进行波形的显示。我看在测评内容中有位仁兄申请了一块MIPI接口的LCD显示器,很是羡慕,自己也该申请一下。下面对本人所做内容进行汇报。

一、开发内容

本人计划开发项目名称为“抽油机微电网能量转换控制器的研制”。抽油机是一种位能性负载,在运行过程中存在倒发电的情况,为了节约能源,并利用倒发电能量,油田的很多丛式井组采用共直流母线形式供电,即将为抽油机供电的变频器直流侧并联在一起,并在直流母线上连接太阳能、风能等新能源发电设备,从而组成微电网。但是在丛式井组中,如果多台抽油机同时处于倒发电状态,大量能量进入直流母线,使直流母线电压升压,危及设备正常运行。因此需要设计一种控制器,能够调节各抽油机的运行状态,使其耗能和倒发电状态错开,实现能量利用的最大化

该控制器利用基于直流侧母线的载波通信方式,读取各抽油机的运行状态,并预测各抽油机倒发电的时刻,如果某些抽油机的倒发电处于同一时刻,则利用载波通信向对应抽油机发出调频指令,使其倒发电时刻错开。此外,该控制器还需要测量每台抽油机的功率、位移参数,组成电功图,利用控制器的强大算力对电功图进行分析,确定其工作状态,为运行人员提供参考,并将测量结果和分析情况通过LCD显示器提供给用户,同时利用以太网将数据传输至后台。

试用时间比较短,不能在现场进行测试,故只能对部分功能进行简单开发。本帖子主要对波形显示这部分内容进行介绍。

二、硬件电路的构成

对于波形显示系统而言,硬件电路比较简单,使用了RZ/G2L开发板和大彩3.5寸串口屏,串口屏连接至开发板的串口1。

微信图片_20220730152254.jpg

三、软件设计

1、串口屏软件设计

本报告中的串口屏共有三个界面,分别是电功图界面、功率曲线界面和载波通信界面。

(1)电功图界面

电功图界面.jpg

该界面用于显示抽油机的电功图,电功图为抽油机的位移和功率曲线的合成,电功图有不同的表示方法,本人使用两个曲线分别显示的方法进行展示。另有三个按钮,用于在三个界面中进行切换。

(2)功率曲线界面

功率曲线界面.png

该界面用于显示功率变化曲线,此外在上方的三个文本框分别显示当前的瞬时功率、一个冲程内的最大功率和最小功率。

(3)载波通信界面

载波通信界面.png

载波通信界面用于载波通信数据传输的演示。接收数据对应的文本框用于显示接收到的数据;发送数据对应的文本框用于显示要发送的数据,按下“发送”按钮,该数据会一载波形式向外发送。载波通信对应程序会在下一次报告中给予展示。

2、开发板程序设计

开发板程序的作用是向串口屏下发指令进行电功图的绘制、瞬时波形的显示、功率大小的显示和载波通信。本次报告不包括载波通信的内容。由于只是在家模拟,没有进行现场进行测试,故波形数据是直接借用的以前所采数据。另外实现的功能不复杂,故采用顺序编程形式,未采用多线程编程。程序框图如下:

框图.jpg

(1)串口初始化程序

char dev[]  = "/dev/ttySC1";
    struct termios oldtio,newtio;
    speed_t speed = B115200;
    int next_option,havearg = 0,flow = 0;
    const char *const short_opt = "fd:";

    fd = open(dev, O_RDWR | O_NONBLOCK| O_NOCTTY | O_NDELAY); 
    if (fd < 0)	{
        printf("Can't Open Serial Port!
");
        exit(0);	
    }
	
     tcgetattr(fd,&oldtio);
    bzero(&newtio,sizeof(newtio));
    newtio.c_cflag = speed|CS8|CLOCAL|CREAD;
    newtio.c_cflag &= ~CSTOPB;
    newtio.c_cflag &= ~PARENB;
    newtio.c_iflag = IGNPAR;  
    newtio.c_oflag = 0;
    tcflush(fd,TCIFLUSH);  
    tcsetattr(fd,TCSANOW,&newtio);  
    tcgetattr(fd,&oldtio);

设置串口1为115200波特率

(2)电功图的绘制

绘制电功图只需将两个曲线的数据上传至串口屏即可。程序代码如下。

void power_diagram(void)
{
    unsigned char temp[250],i,t;
    t=0;
    temp[t++]=0xEE;
    temp[t++]=0xB1;
    temp[t++]=0x32;
    for(i=0;i<3;i++)
        temp[t++]=0x00;
    temp[t++]=0x01;
    for(i=0;i<2;i++)
        temp[t++]=0x00;
    temp[t++]=200;
    for(i=0;i<200;i++)
    {
        temp[t++]=(unsigned long)move_data[i]*235/338+10;        
    }
    temp[t++]=0xFF;
    temp[t++]=0xFC;
     temp[t++]=0xFF;
     temp[t++]=0xFF;

     write(fd, temp, t);
     usleep(100000);

    t=0;
    temp[t++]=0xEE;
    temp[t++]=0xB1;
    temp[t++]=0x32;
    for(i=0;i<3;i++)
        temp[t++]=0x00;
    temp[t++]=0x01;
    temp[t++]=0x01;
    temp[t++]=0x00;
    temp[t++]=200;
    for(i=0;i<200;i++)
    {
        temp[t++]=(unsigned char)((power_data[i]+1.08)*235/(7.88+1.08)+10);        
    }
    temp[t++]=0xFF;
    temp[t++]=0xFC;
     temp[t++]=0xFF;
     temp[t++]=0xFF;

     write(fd, temp, t);
}

(3)功率曲线绘制

曲线绘制采用在曲线头添加数据的方法,瞬时功率采用格式化本文显示的方法,这里不再详细介绍。

四、运行效果

电功图运行.jpg

本图为电功图运行画面,其中白色为位移曲线,黄色为功率曲线,该曲线反映了抽油机的电功率和悬点位移之间的对应关系。

瞬时曲线.jpg

本图是瞬时功率曲线,波形实时向右移动,左上角的文本框显示当前的功率大小。

五、总结

由于某些原因,本人缺少MIPI接口的显示器,只能利用串口屏进行显示操作,没有充分体验到该开发板的强大能力,稍显遗憾。如果时间充裕,本人会自行购买MIPI接口显示器、摄像头等设备,丰富项目的开发内容。

基于飞凌RZ/G2L开发板的波形显示系统的搭建


【附上开发板体验视频(详见作者原文)】

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 飞凌
    +关注

    关注

    0

    文章

    134

    浏览量

    16095
  • 开发板试用
    +关注

    关注

    3

    文章

    301

    浏览量

    2039
收藏 人收藏

    评论

    相关推荐

    RZ/G2L高速虚拟串口方案 基于瑞萨RZ/G2L SMARC开发板的虚拟(Virtual UART)实现方案

    RZ/G2L具有丰富的外设,比如千兆以太网,CANFD以及丰富的UART接口,可以满足工业数据收集处理相关的应用。本文主要介绍基于瑞萨RZ/G2L SMARC
    发表于 11-20 14:41 178次阅读
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>高速虚拟串口方案 基于瑞萨<b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b> SMARC<b class='flag-5'>开发板</b>的虚拟(Virtual UART)实现方案

    RZ/G2L串口SCI的使用(下)

    RZ/G2L串口SCI的使用
    的头像 发表于 08-03 08:06 465次阅读
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>串口SCI的使用(下)

    RZ/G2L串口SCI的使用(上)

    RZ/G2L串口SCI的使用
    的头像 发表于 07-25 08:06 478次阅读
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>串口SCI的使用(上)

    RZ/G2L Demo调试经验流程分享(1)

    r01us0553ej0107-rz-g(Release Note).pdf,r01us0556ej0102-rz-g(Board_StartUp_Guide_smarcEVK).pdf,对SMARC EVK of RZ/
    的头像 发表于 05-06 14:25 602次阅读
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b> Demo调试经验流程分享(1)

    RZ/G2L SD卡启动环境变量存储设置

    RZ/G2L微处理器配备Cortex-A55(1.2 GHz)CPU、16位DDR3L/DDR4接口、带Arm Mali-G31的3D图形加速引擎以及视频编解码器(H.264)。
    的头像 发表于 03-21 13:56 520次阅读
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b> SD卡启动环境变量存储设置

    瑞萨RZ/V2L预训练的人工智能模型

    RZ/V2L还与RZ/G2L封装和引脚兼容。这使得RZ/G2L用户可轻松升级至
    发表于 03-21 13:51 384次阅读
    瑞萨<b class='flag-5'>RZ</b>/V<b class='flag-5'>2L</b>预训练的人工智能模型

    RZ/G2L微处理器DDR ECC功能和机制概要

    RZ/G2L微处理器配备Cortex®-A55 (1.2 GHz) CPU、16位DDR3L/DDR4接口、带Arm Mali-G31的3D图形加速引擎以及视频编解码器(H.264)。
    的头像 发表于 02-28 13:44 1222次阅读
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>微处理器DDR ECC功能和机制概要

    【米尔-瑞萨RZ/G2UL开发板】1.开箱

    【米尔-瑞萨RZ/G2UL开发板】1.开箱 开箱视频 开箱也许会迟到,但是绝对不会缺席。今天开箱的是米尔-瑞萨 RZ/G2UL
    发表于 02-04 23:38

    RZ/G2LRZ/G2LC和RZ/G2UL的SMARC EVK启动指南Rev.1.01

    电子发烧友网站提供《RZ/G2LRZ/G2LC和RZ/G2UL的SMARC EVK启动指南Re
    发表于 02-02 09:45 1次下载
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>、<b class='flag-5'>RZ</b>/<b class='flag-5'>G2</b>LC和<b class='flag-5'>RZ</b>/<b class='flag-5'>G2</b>UL的SMARC EVK启动指南Rev.1.01

    米尔RZ/G2L开发板瑞米派双核A55Remi Pi学习兼容树莓派扩展模块

    RemiPi瑞萨第一款MPU生态板卡兼容树莓派扩展模块瑞萨RZ/G2L工业级处理器,便于企业客户产品开发;RemiPi兼容树莓派所有配件,方便产品原型搭建和创新应用;更多的工业接口,兼
    发表于 01-29 17:05 4次下载

    瑞萨RZ/G2L串口SCI的使用(上)

    瑞萨RZ/G2L的串口简称SCI,全称Serial Communication Interface。
    的头像 发表于 01-17 12:19 1426次阅读
    瑞萨<b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>串口SCI的使用(上)

    【米尔-瑞萨RZ/G2UL开发板开发板开箱与接口介绍

    开发板简介 MYC-YG2UL核心开发板基于RZ/G2UL处理器,通用64位工业MPU
    发表于 01-14 13:25

    RZ/G2L RZ/G2LC RZ/G2UL用灵活的软件包设置GPIO

    电子发烧友网站提供《RZ/G2L RZ/G2LC RZ/G2UL用灵活的软件包设置GPIO.pd
    发表于 01-14 10:53 0次下载
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b> <b class='flag-5'>RZ</b>/<b class='flag-5'>G2</b>LC <b class='flag-5'>RZ</b>/<b class='flag-5'>G2</b>UL用灵活的软件包设置GPIO

    RZ/G2L RZ/G2LC RZ/G2UL RZ/G3S灵活软件包应用说明

    电子发烧友网站提供《RZ/G2L RZ/G2LC RZ/G2UL
    发表于 01-14 10:46 1次下载
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b> <b class='flag-5'>RZ</b>/<b class='flag-5'>G2</b>LC <b class='flag-5'>RZ</b>/<b class='flag-5'>G2</b>UL <b class='flag-5'>RZ</b>/<b class='flag-5'>G</b>3S灵活软件包应用说明

    RZ/G2L Linux系统如何添加新的内核模块

    RZ/G2L Linux系统的镜像基于yocto构建,本篇介绍如何添加新的内核模块。
    的头像 发表于 01-04 12:19 1693次阅读
    <b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b> Linux<b class='flag-5'>系统</b>如何添加新的内核模块