❶ 电力行业,米尔STM32MP135开发板IEC61850协议移植笔记
IEC61850协议在电力和储能系统中的应用广泛,该协议实现智能变电站工程运作的标准化,使实施规范、统一和透明。本文介绍如何在基于米尔MYD-YF13X开发板的linux系统上移植和使用libIEC61850开源库,提供IEC61850/MMS,IEC61850/GOOSE和IEC61850-9-2/采样值通信协议的服务器和客户端库。
为了编译IEC61850库,首先需要安装java环境。使用米尔提供的JDK安装包(jdk-8u191-linux-x64.tar.gz)并解压到工作目录,随后配置环境变量以确保Java运行环境成功安装。验证安装过程通过运行java -version命令。
紧接着,配置交叉编译工具链,使用MYIR制作的交叉编译工具链,将工具链文件复制到工作目录,并设置环境变量,确保编译过程顺利进行。验证设置成功使用arm-myir-linux-gnueabihf-gcc -v命令。
IEC61850库的编译通过源码包实现。从光盘文件的/04-Linux_Source/IEC61850目录获取libiec61850-1.3.0.tar.gz,解压并进入目录,执行make TARGET=LINUX-ARM命令编译库。
编译完成后,MYIR IEC61850应用位于目录examples/myir_iec61850_server下。将myir_iec61850_server拷贝至开发板,运行应用并验证其正确性。启动dbus-launch,设置环境变量,执行./myir_iec61850_server命令,确保通讯成功。
为了验证应用,可使用IEDScout软件。在IEC61850应用界面打开软件,输入开发板网口的IP地址,点击Discover按钮,然后在Browser页面看到MYIR1命名的IED设备模型。点击进入通用I/O控制界面,双击GGIO1下面的LED1数据对象,点击Write按钮对LED1进行控制,修改Value栏为false,点击Write按键,此时开发板上的LED心跳灯被点亮,说明通讯成功。
米尔MYD-YF13X开发板基于STM32MP135单核Cortex-A7处理器,提供丰富的接口和资源,助力开发者快速开发智能变电站相关应用。
更多关于MYD-YF13X开发板的信息可访问产品链接。
❷ Linux vlc 用命令 HTTP串流 比如是这样需要输入什么命令
在Linux系统中,使用VLC播放器进行网络流媒体传输是一种常见的需求。下面是一些使用VLC通过UDP协议将流媒体数据传输至不同协议的具体命令实例。
1. 使用UDP协议将数据传输至MMS,可以使用如下命令:
vlc -vvv udp://@:9001 :sout=#std{acess=mms,mux=asfh,dst=:8080}
传输后,可以在客户端使用以下命令播放:
播放 mms://192.168.251.142:8080
2. 对于UDP到RTSP的传输,命令如下:
vlc -vvv udp://@:9001 :sout=#plicate{dst=rtp{dst=192.168.251.142,port=1234,sdp=rtsp://192.168.251.142:8080/test.sdp}} 前面的地址为目的地址,后面也可以指定sdp=rtsp://:8080/test.sdp 或者 vlc -vvv udp://@:9001 :sout=#rtp{dst=192.168.251.142,port=1234,sdp=rtsp://:8080/test.sdp} 播放rtsp://192.168.251.142:8080/test.sdp
3. 通过UDP将数据传输至HTTP,命令如下:
vlc -vvv udp://@:9001 :sout=#http{dst=:8080/go.mpg}
传输后,可以在客户端使用以下命令播放:
播放 http://192.168.251.142:8080/go.mpg
以上命令中的端口号和地址可以根据实际需求进行调整。希望这些命令对你有所帮助。
❸ 开博尔 如何播放 mms
这篇帖子中的方法不够完善,推荐一种更好的方法解决播放机的mms和rtmp视频播放问题。
解决播放机的mms在线视频播放问题
播放机要能播放mms视频,需要2个文件msdl和wmv。在播放mms视频时,wmv中要调用msdl。在播放机中,wmv要有执行权限,并且wmv的存放位置有一定要求。在播放mms视频时,/tmp/www/cgi-bin/wmv要存在。msdl的存放位置没有严格限制,但是msdl的存放位置确定了,wmv中调用msdl的路径也就确定了,两者要保证一致。例如,msdl存放在/opt/bin文件夹中,wmv中就是/opt/bin/msdl:
#!/bin/sh
cat <<EOF
Content-type: video/x-ms-wmv
EOF
exec /opt/bin/msdl -q -o - $QUERY_STRING
如果把wmv直接存放在/tmp/www/cgi-bin文件夹中,因为播放机用遥控器关机时,/tmp中的内容会自动清空,再用遥控器重新启动后就不能播放mms视频了。
播放机关机断电,拔掉电源线再插上电源线,重新启动时,会自动把/tmp_orig中的内容复制到/tmp。如果把wmv存放在/tmp_orig/www/cgi-bin文件夹中,就可以使播放机关机断电,拔掉电源线再插上电源线,重新启动时能播放mms视频。这里始终说关机断电重新启动,是要拔掉电源线,再插上电源线重新启动,是的,没错。即使有/tmp_orig/www/cgi-bin/wmv,如果不断电,只是用遥控器关机后重新启动,一般是不会自动把/tmp_orig/www/cgi-bin/wmv复制到/tmp/www/cgi-bin/wmv中的。
如果用mount -o bind命令把/tmp_orig/www/cgi-bin和另一个可写文件夹如/usr/local/etc/cgi-bin绑在一起,再把wmv复制到这个绑在一起的可写文件夹/usr/local/etc/cgi-bin中,看起来好像可以,但实际上这样做一般是不行的。这是因为命令mount -o bind /usr/local/etc/cgi-bin /tmp_orig/www/cgi-bin放在/usr/local/etc/rcS中,播放机拔掉电源线断电重新启动时,把/tmp_orig/www/cgi-bin复制到/tmp/www/cgi-bin是在命令mount -o bind /usr/local/etc/cgi-bin /tmp_orig/www/cgi-bin执行之前。遥控器关机重新启动时,虽然/usr/local/etc/cgi-bin和/tmp_orig/www/cgi-bin这时已经绑在一起,但是用遥控器启动时一般是不会自动把/tmp_orig/www/cgi-bin复制到/tmp/www/cgi-bin的。
如果用mount -o bind命令把/tmp/www/cgi-bin和另一个可写文件夹如/usr/local/etc/cgi-bin绑在一起,再把wmv复制到这个绑在一起的可写文件夹/usr/local/etc/cgi-bin中,这样做也是不行的。遥控器关机重新启动时,自动清空/tmp/www/cgi-bin的同时,也会把绑在一起的文件夹/usr/local/etc/cgi-bin中的内容清空了。只能用cp复制命令把/usr/local/etc/cgi-bin复制到/tmp/www/cgi-bin。
最终要解决用遥控器关机启动时也能播放mms视频的问题,要用到播放机设置菜单中的“BT and SAMBA”选项设置功能。当“BT and SAMBA”选项打开时,/tmp/www/cgi-bin会自动链接到另一个文件夹,如/usr/local/bin/package/unicgi/cgi-bin,根据具体的播放机可能会有变化,可以在播放机运行时,在设置菜单中打开“BT and SAMBA”选项,然后登录播放机查看/tmp/www/cgi-bin的实际链接路径,telnet或ftp登录播放机都可以查看到。根据实际查看到的/tmp/www/cgi-bin的链接路径,如/usr/local/bin/package/unicgi/cgi-bin,把wmv复制到这个链接路径的文件夹/usr/local/bin/package/unicgi/cgi-bin中。这样修改后,播放机设置菜单的系统选项中的“BT and SAMBA”也成了mms视频的“播放开关”:
1. “BT and SAMBA”关闭时,一定要断电(拔掉电源线再重新插上)重新启动才能播放mms视频;
2. 播放机运行时,“BT and SAMBA”开关直接控制能不能播放mms视频;
3. “BT and SAMBA”打开时,任何方式启动播放机都可以播放mms视频。
对于yaffs格式固件,可以在播放机中直接修改,参看在Windows中用FTP方法修改增加高清播放机的在线视频或wmv中增加一个字母s就能播放mms在线电视中的方法。对于squashfs格式固件,可以参看在Linux中的squashfs格式固件解包、修改和封包过程或在Windows中的squashfs格式固件解包、修改和封包过程中的方法直接修改。和下面的telnet登录播放机后进行修改相比,把固件解包后进行修改再封包的修改方法更方便一些,但修改固件的风险会更大一些。最后把上面的内容归纳一下:
1. 播放mms视频需要2个文件msdl和wmv( msdl_wmv.rar (97.55 KB, 下载次数: 465) 2011-1-18 12:14 上传下载次数: 465
,这个附件中wmv调用msdl的路径是/opt/bin/msdl);
2. 把msdl复制到/opt/bin文件夹中,msdl的存放位置和wmv中调用msdl的路径要保证一致;
3. 把wmv复制到/tmp_orig/www/cgi-bin文件夹中;
4. 把wmv复制到/tmp/www/cgi-bin链接路径的文件夹/usr/local/bin/package/unicgi/cgi-bin中;
5. 提醒一下别忘记设置wmv的执行权限。
telnet登录播放机修改yaffs格式固件的具体方法步骤参看下面的6楼,修改squashfs格式固件的间接方法步骤参看下面的15楼。
解决rtmp直播问题
把msdl换成rtmpmp和flvstreamer、把wmv换成rtmp,就可以一字不漏、一字不差地完全套用上面解决播放机的mms在线视频播放问题中的方法步骤。例如yaffs格式固件可以telnet登录播放机直接修改,squashfs格式固件除了可以用解包、修改和封包的方法直接修改外,也可以telnet登录播放机间接修改。telnet登录播放机直接修改yaffs格式固件的具体步骤如下(把6楼中直接修改mms视频的步骤也合并在这里):
1. 下载附件 msdl_wmv.rar (97.55 KB, 下载次数: 137) 2011-2-22 13:41 上传下载次数: 137
、 rtmp_rtmpmp.rar (498.54 KB, 下载次数: 198) 2011-2-22 09:44 上传下载次数: 198
和 flvstreamer.rar (45.78 KB, 下载次数: 152) 2011-3-19 16:49 上传下载次数: 152
,解压后得到文件msdl和wmv、rtmpmp和flvstreamer以及rtmp。在wmv中调用msdl的路径是/opt/bin/msdl,在rtmp中调用rtmpmp和flvstreamer的路径是/opt/bin/rtmpmp和/opt/bin/flvstreamer。把文件msdl和wmv、rtmpmp和flvstreamer以及rtmp复制粘贴到u盘的根目录后,再把u盘插到播放机上;
2. 启动播放机,在设置菜单中打开“BT and SAMBA ”;
3. telnet登录播放机;
4. 执行下面的命令后,在光标前可以查看到/tmp/www/cgi-bin的实际链接路径,如/usr/local/bin/package/unicgi/cgi-bin :
cd /tmp/www/cgi-bin
5. 执行下面的命令让播放机可写并查看u盘:
cd /
mount -o rw,remount /
ls /tmp/usbmounts
6. 根据前面查看到的/tmp/www/cgi-bin的实际链接路径,如/usr/local/bin/package/unicgi/cgi-bin,以及查看到的具体u盘,如sda1、sdb1、......,执行下面的复制命令:
mkdir -p /opt/bin(如果/opt/bin不存在)
cp /tmp/usbmounts/sda1/msdl /opt/bin
cp /tmp/usbmounts/sda1/rtmpmp /opt/bin
cp /tmp/usbmounts/sda1/flvstreamer /opt/bin
cp /tmp/usbmounts/sda1/wmv /tmp_orig/www/cgi-bin
cp /tmp/usbmounts/sda1/rtmp /tmp_orig/www/cgi-bin
cp /tmp/usbmounts/sda1/wmv /usr/local/bin/package/unicgi/cgi-bin
cp /tmp/usbmounts/sda1/rtmp /usr/local/bin/package/unicgi/cgi-bin
7. 执行下面的命令设置执行权限:
chmod +x /opt/bin/msdl
chmod +x /opt/bin/rtmpmp
chmod +x /opt/bin/flvstreamer
chmod +x /tmp_orig/www/cgi-bin/wmv
chmod +x /tmp_orig/www/cgi-bin/rtmp
chmod +x /usr/local/bin/package/unicgi/cgi-bin/wmv
chmod +x /usr/local/bin/package/unicgi/cgi-bin/rtmp
8. 重新启动后mms视频和rtmp直播就可以用了。使用时要在设置菜单的系统选项中把“BT and SAMBA”打开。
对于squashfs格式固件,如果不用解包、修改和封包的方法直接修改,就只能用mount -o bind命令绑一个可写文件夹(目录)的方法间接修改。yaffs格式固件也可以用这种间接修改方法。telnet登录播放机间接修改squashfs格式固件的具体过程如下(把15楼中间接修改mms视频的步骤也合并在这里):
1. 下载附件 msdl_wmv_etc.rar (97.58 KB, 下载次数: 115) 2011-2-22 13:57 上传下载次数: 115
、 rtmpmp_rtmp_etc.rar (498.54 KB, 下载次数: 115) 2011-2-22 10:31 上传下载次数: 115
和 flvstreamer_etc.rar (45.8 KB, 下载次数: 102) 2011-3-19 16:49 上传下载次数: 102
,解压后得到文件msdl和wmv、rtmpmp和flvstreamer以及rtmp。和上面不同,因为要把msdl、rtmpmp和flvstreamer存放在可写的/usr/local/etc文件夹中,所以在附件解压得到的wmv和rtmp中,/opt/bin都改成了/usr/local/etc;
2. 把msdl和wmv、rtmpmp和flvstreamer以及rtmp复制粘贴到u盘的根目录后,再把u盘接到播放机上;
3. 启动播放机,在设置菜单中打开“BT and SAMBA ”;
4. telnet登录播放机;
5. 执行下面的命令后,在光标前可以查看到/tmp/www/cgi-bin的实际链接路径,如/usr/local/bin/package/unicgi/cgi-bin ;
cd /tmp/www/cgi-bin
6. 执行下面的命令让播放机可写并查看u盘:
cd /
mount -o rw,remount /
ls /tmp/usbmounts
7. 根据前面查看到的/tmp/www/cgi-bin的实际链接路径,如/usr/local/bin/package/unicgi/cgi-bin,以及查看到的具体u盘,如sda1、sdb1、......,执行下面的复制命令:
cp /tmp/usbmounts/sda1/msdl /usr/local/etc
cp /tmp/usbmounts/sda1/rtmpmp /usr/local/etc
cp /tmp/usbmounts/sda1/flvstreamer /usr/local/etc
mkdir -p /usr/local/etc/www/cgi-bin
cp -r /usr/local/bin/package/unicgi/cgi-bin/. /usr/local/etc/www/cgi-bin(小数点“.”的前面无空格,后面有空格)
cp /tmp/usbmounts/sda1/wmv /usr/local/etc/www/cgi-bin
cp /tmp/usbmounts/sda1/rtmp /usr/local/etc/www/cgi-bin
8. 执行下面的命令设置执行权限:
chmod +x /usr/local/etc/msdl
chmod +x /usr/local/etc/rtmpmp
chmod +x /usr/local/etc/flvstreamer
chmod +x /usr/local/etc/www/cgi-bin/wmv
chmod +x /usr/local/etc/www/cgi-bin/rtmp
9. 执行下面的命令,在rcS中添加一行命令,把/usr/local/etc/www/cgi-bin复制到/tmp/www/cgi-bin,这样在“BT and SAMBA”关闭的情况下,断电(拔掉电源线)重新开机时也能播放mms视频和rtmp直播:
echo "cp -r /usr/local/etc/www/. /tmp/www" >> /usr/local/etc/rcS (小数点“.”的前面无空格,后面有空格)
10. 如果前面没有间接修改过mms视频,执行下面的命令,在rcS中添加一行命令,把可写目录和不可写目录“绑在一起”:
echo "mount -o bind /usr/local/etc/www/cgi-bin /usr/local/bin/package/unicgi/cgi-bin" >> /usr/local/etc/rcS
11. 重新启动后mms视频和rtmp直播就可以用了。如果要使用遥控器启动时也能播放mms视频和rtmp直播,就要在设置菜单的系统选项中把“BT and SAMBA”打开。
同时一起解决mms和rtmp在线视频播放问题
1. 播放mms视频需要2个文件msdl和wmv msdl_wmv.rar (97.55 KB, 下载次数: 206) 2011-2-20 13:36 上传下载次数: 206
,这个附件中wmv调用msdl的路径是/opt/bin/msdl,播放rtmp视频需要文件rtmpmp和flvstreamer以及rtmp rtmp_rtmpmp.rar (498.54 KB, 下载次数: 190) 2011-2-22 09:44 上传下载次数: 190
flvstreamer.rar (45.78 KB, 下载次数: 186) 2011-3-19 16:49 上传下载次数: 186
, 在附件中rtmp调用rtmpmp和flvstreamer的路径是/opt/bin/rtmpmp和/opt/bin/flvstreamer ;
2. 把msdl、rtmpmp和flvstreamer复制到/opt/bin文件夹中,msdl的存放位置要和wmv中调用msdl的路径保证一致,rtmpmp和flvstreamer的存放位置要和rtmp中调用rtmpmp和flvstreamer的路径保证一致;
3. 把wmv和rtmp复制到/tmp_orig/www/cgi-bin文件夹中;
4. 把wmv和rtmp复制到/tmp/www/cgi-bin链接路径的文件夹/usr/local/bin/package/unicgi/cgi-bin中;
5. 提醒一下别忘记设置msdl和wmv、rtmpmp和flvstreamer以及rtmp的执行权限。