当前位置: 首页 > news >正文

网站备案域名用二级域名公司推广方法有哪些

网站备案域名用二级域名,公司推广方法有哪些,小程序专区,湖南企业seo优化推荐目录 前言一、VectorCANdb下载及安装二、DBC文件的编写1.新建dbc文件2.建立dbc2.1根据CAN协议设置以下的signals2.2设置报文2.3建立报文与信号的关系2.4建立节点 三、编写程序使用UDP通信下发can协议1.查看can口、电脑ip以及端口号2.编写测试程序 前言 最近完成了一个项目&…

目录

  • 前言
  • 一、VectorCANdb++下载及安装
  • 二、DBC文件的编写
    • 1.新建dbc文件
    • 2.建立dbc
      • 2.1根据CAN协议设置以下的signals
      • 2.2设置报文
      • 2.3建立报文与信号的关系
      • 2.4建立节点
  • 三、编写程序使用UDP通信下发can协议
    • 1.查看can口、电脑ip以及端口号
    • 2.编写测试程序


前言

最近完成了一个项目,给了一个底盘,还有底盘的CAN协议,来写通底盘。CAN协议之前接触过,DBC文件是第一次接触,走了不少弯路,在此记录一下整个工作的完整流程。


一、VectorCANdb++下载及安装

参考链接:
CANdb++从安装到使用
WIN10下CANdb++编辑器的下载和安装

注意要在windows系统下安装
VectorCANdb++下载链接:https://www.vector.com/cn/zh/download/candb-31-sp3/
在这里插入图片描述下载完了一直点击nex即可完成安装


二、DBC文件的编写

参考链接:
CAN db++(创建DBC文件)学习笔记
关于DBC文件的创建(DBC文件系列其一)

参考链接里面详细介绍了下面编写DBC文件过程中,每个参数的含义

首先给出一份CAN协议
在这里插入图片描述

1.新建dbc文件

点击File->Create Database
在这里插入图片描述选择CANTemplate.dbc后点击OK
在这里插入图片描述创建文件名
在这里插入图片描述新建完成后出现
在这里插入图片描述

2.建立dbc

2.1根据CAN协议设置以下的signals

点击signals->new
在这里插入图片描述

Value Type选择UnsignedLength(信号字节长度)、Factor(数据精度)、MinimumMaximum根据表格来填。
注意:1.协议中给出的是十六进制数,而这边的最大值最小值范围是十进制数。2.协议中第2、3个字节没有定义数据,那么就默认为0,我们在这边也把这个signal定义一下
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.2设置报文

在这里插入图片描述
在这里插入图片描述

2.3建立报文与信号的关系

鼠标左键按住设置好的signals,拖动到EPS2上面,注意顺序要与文件中顺序一致
在这里插入图片描述全都拖好了,双击EPS2,然后点击Layout,如下图所示,可以检查一下报文设置是否正确(图片上的字节顺序,从右至左,从上到下,依次增大)

在这里插入图片描述

2.4建立节点

1.建立发送和接受节点
右键点击Network nodes -> New
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.将需要发送的报文拖到目标节点下的Tx Messages下面

我上面的例子只编写了一条message,其他的message同理。下面图片中我一共编写了四条message,就不一一展示了。

在这里插入图片描述
3.设置需要接受的报文
双击打开Receive,选择Mapped Rx Sig.,然后选择Add:all from one message

在这里插入图片描述
选择需要接收的报文,点击ok

在这里插入图片描述
4.检查节点间的收发关系
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
5.can网络自动检查

在这里插入图片描述
在这里插入图片描述
没有错误,至此,DBC文件编写成功
我们可以右键编好的文件,使用文本打开,查看DBC文件的解析。
DBC文件的解析的参考链接:
DBC文件学习
汽车行业DBC文件解析 | Python 解析dbc文件


三、编写程序使用UDP通信下发can协议

参考链接:ubuntu下使用python进行简单的UDP通信

1.查看can口、电脑ip以及端口号

查看can盒底部默认ip为192.168.4.101,下面修改本机ip在同一网段下
在这里插入图片描述

接着安装wireshark

sudo apt install wireshark

然后打开wireshark

sudo wireshark

在这里插入图片描述
显示网络已经通了,而且得到了
CAN盒ip:192.168.4.101,端口号:6666
本机ip:192.168.4.100,端口号:8882

2.编写测试程序

编写了一段程序用来测试UDP通讯,注意修改ip与端口号
下面的程序使用了cantools库,首先安装一下这个库pip3 install cantools使用python3运行该程序(python3 xxx.py)

# -*- coding:UTF-8 -*-
import socket
import cantools
from binascii import hexlifydef main():# 1. 创建socket套接字udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  # AF_INET表示使用ipv4,默认不变,SOCK_DGRAM表示使用UDP通信协议# 2. 绑定端口portlocal_addr = ("192.168.4.100", 8882)  # 本地ip,指定端口号7878udp_socket.bind(local_addr)  # 绑定端口# 3. 加载dbc文件db = cantools.database.load_file('/home/smart_car/DBC_File/text.dbc')# example_message = db.get_message_by_name('VCU')# 4. 接受UDP数据包并解析CAN信号值# recv_data = udp_socket.recvfrom(1024)  # 定义单次最大接收字节数# recv_msg = recv_data[0]  # 接收的元组形式的数据有两个元素,第一个为发送信息# send_addr = recv_data[1]  # 元组第二个元素为发信息方的ip以及port# print(recv_msg)# can_data = db.decode_message(example_message.frame_id, recv_msg)  # 解析CAN信号值# print(can_data)# 5. 输入CAN信号的名称和值,并发送CAN数据包# (控制方向盘转到100°,转速100)的指令:08 00 00 04 69 20 00 00 04 64 00 64 24data_1 = { 'Work_mode': 32,'Stay0': 0, 'Stay1': 0, 'Steer_Angle_H': 4, 'Steer_Angle_L': 100, 'Angle_alignment': 0, 'Angular_velocity': 100, 'Check': 36}while True :# (控制方向盘转到100°,转速100)的指令:08 00 00 04 69 20 00 00 04 64 00 64 24message_move = db.encode_message("EPS2", data_1)message_2 = bytes([0x08, 0x00, 0x00,0x04, 0x69])message_3 = message_2 + message_move# print(hexlify(message).decode('ascii'))# print(message)udp_socket.sendto(message_3, ("192.168.4.101", 6666))if __name__ == "__main__":main()

解释说明
1.程序作用
上面的程序一部分是接受底盘CAN协议并且利用DBC文件解码;另一部分是编写一条指令,然后利用DBC文件编码,然后用UDP发送给底盘
2.两行代码解释

message_2 = bytes([0x08, 0x00, 0x00,0x04, 0x69])
message_3 = message_2 + message_move

加这个的原因是,一个标准的CAN协议包含帧信息、帧ID和帧信息,而利用db.encode_message()函数进行DBC编码的时候,只编码了最后八个字节的帧数据,所以将第一到五个字节的信息手动添加进去(前五个字节的信息是固定的)。
在这里插入图片描述

http://www.shuangfujiaoyu.com/news/18861.html

相关文章:

  • 产品销售网站模板跨境电商哪个平台比较好
  • php网站开发培训百度购物平台客服电话
  • 东莞网站建设_东莞网页设计地推团队接单平台
  • 湖南网站托管哪家好整站多关键词优化
  • 网站设计经典案例分析深圳百度开户
  • 西安做网站微信公司培训网址大全
  • 罗定建设局网站朝阳seo排名
  • 怀柔建设网站经典软文案例
  • 房产中介在线咨询镇海seo关键词优化费用
  • 怎么做网站和服务器吗电脑培训班一般要学多久
  • 麒麟区住房和城乡建设局网站网站快速排名优化哪家好
  • 国外机械做的好的网站什么是网络营销策略
  • 做好一个网站需要多久seo关键词优化举例
  • wordpress查询置顶文章贵港seo
  • 手机移动网站建设软件开发自学步骤
  • 重庆网站建设找承越凡科官网免费制作小程序
  • 南京网站搜索引擎优化电脑优化软件排行榜
  • 中国制造网介绍sem和seo是什么职业
  • 免费com域名注册网站东莞网站建设方案外包
  • 西乡做网站公司网站关键词优化怎么做的
  • 西安做网站选哪家公司推广赚钱的软件排行
  • 龙之向导外贸网站 网络服务海外推广解决方案
  • 网站怎么维护更新站长工具ping
  • 建设银行在上海的招聘网站seo工具
  • 后台给网站做关键字东莞网站开发公司
  • 广州 网站开发十大接单推广平台
  • 蛋糕行业网站建设方案seo搜索引擎优化名词解释
  • 哪个网站专门做灵异文sem和seo是什么意思
  • 郑州便民服务平台成都搜索优化排名公司
  • 网站开发和网页设计的区别打开百度搜索引擎