灞波儿奔

  • 2019-07-15
  • 发表了主题帖: 射频识别应用系统的运行环境与接口方式介绍

            RFID技术作为物联网发展的关键技术,其应用市场必将随着物联网的发展而扩大。本文主要详细介绍射频识别应用系统的运行环境与接口方式,具体的跟随小编一起来了解一下。   射频识别应用系统简介   RFID射频识别是一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据,识别工作无须人工干预,可工作于各种恶劣环境。RFID技术可识别高速运动物体并可同时识别多个标签, 操作快捷方便。   短距离射频产品不怕油渍、灰尘污染等恶劣的环境,可在这样的环境中替代条码,例如用在工厂的流水线上跟踪物体。长距射频产品多用于交通上,识别距离可达几十米,如自动收费或识别车辆身份等。   RFID技术的应用   1、在零售业中,条形码技术的运用使得数以万计的商品种类、价格、产地、批次、货架、库存等   2、采用车辆自动识别技术,使得路桥、停车场等收费场所避免了车辆排队通关现象,减少了时间浪费,从而极大地提高了交通运输效率及交通运输设施的通行能力;   3、在自动化的生产流水线上,整个产品生产流程的各个环节均被置于严密的监控和管理之下;   4、在粉尘、污染、寒冷、炎热等恶劣环境中,远距离射频识别技术的运用改善了卡车司机必须下车办理手续的不便;   5、在公交车的运行管理中,自动识别系统准确地记录着车辆在沿线各站点的到发站时刻,为车辆调度及全程运行管理提供实时可靠的信息。      射频识别应用系统的运行环境   一个完整的射频识别应用系统应当包括读写器、电子标签、计算机网络等设备。考虑到数据读取、处理、传输等问题,还应当考虑读写器天线的安装、传输距离的远近等问题。   射频识别技术的运行环境相对比较宽松,从应用软件系统的运行环境来看,可以在现有的任何系统上运行基于任何编程语言的任何软件。   计算机平台系统包括Windows、Linux、UNIX以及DOS平台系统。      射频识别应用系统的接口方式   (1)RJ45   RF45和5类线配合使用在以太网络中。8条线分成4组,分别由红白、红、绿白、绿、蓝白、蓝、棕白、棕共8种单一颜色或者白条色线组成。关于RJ45的接法有两种,分别为T-568A和T-568B,两种接法唯一的区别是线序不同。   RJ45传输信号较远,采用的是TCP/IP协议。   (2)RS-232   RS-232是目前比较流行的计算机串行接口。常用的RS-232接口有DB9和DB25两种形式。   RS-232是电子工业联合会开发的实现广泛的串行传输接口,用来连接数据终端设备到数据通信设各。RS-232指定线和连接器的类型、连接器的接法以及每条线的功能、电压、意义与控制过程。RS-232与ITU的V.24和V.28兼容。   (3)rs-485/' target='_blank'>RS-485/ RS-422   RS-422是使用平稳线的全双工接口,比RS-232抗干扰能力更强。RS-422数据传输速 其他条件相同时,低频系统的识别距离最近,其次是中高频系统、微波系统,微波系统的识别距离最远。只要读写器的频率发生变化,系统的工作频率就会随之改变。   射频识别系统的有效识别距离和读写器的射频发射功率成正比。发射功率越大,识别距离也就越远。但是电磁波产生的辐射超过一定的范围时,就会对环境和人体产生有害的影响。因此,在电磁功率方面必须遵循一定的功率标准。   电子标签的封装形式也是影响系统识别距离的原因之一。电子标签的天线越大,即电子标签穿过读写器的作用区域内所获取的磁通量越大,存储的能量也越大。   应用项目所需要的作用距离取决于多种因素:电子标签的定位精度;实际应用中多个电子标签之间的最小距离;在读写器的工作区域内,电子标签的移动速度。   通常在RFID应用中,选择恰当的天线,即可适应长距离读写的需要。例如,FastTrack传送带式天线就是设计安装在滚轴之间的传送带上,REID载体则安装在托盘或产品的底部,以确保载体直接从天线上通过。   (3)数据传输速率   对于大多数数据采集系统来说,速度是非常重要的因素。由于当今不断缩短产品生产周期,要求读取和更新RFID载体的时间越来越短。   ①只读速率   RFID只读系统的数据传输速率取决于代码的长度、载体数据发送速率、读写距离、载体与天线间载波频率,以及数据传输的调制技术等因素。传输速率随实际应用中产品种类的不同而不同。   ②无源读写速率   无源读写REID系统的数据传输速率决定因素与只读系统一样,不过除了要考虑从载体上读数据外,还要考虑往载体上写数据。传输速率随实际应用中产品种类的不同而有所变化。   ③有源读写速率   有源读写RFID系统的数据传输速率决定因素与无源系统一样,不同的是无源系统需要激活载体上的电容充电来通信。很重要的一点是,一个典型的低频读写系统的工作速率可能仅为100字节/s或200字节/s。这样,由于在一个站点上可能会有数百字节数据需要传送,数据的传输时间就会需要数秒钟,这可能会比整个机械操作的时间还要长。EMS公司已经通过采用数项独到且专有的技术,设计出一种低频系统,其速率高于大多数微波系统。      (4)安全要求   安全要求,一般指的是加密和身份认证。对一个计划中的射频识别系统应该就其安全要求做出非常准确的评估,以便从一开始就排除在应用阶段可能会出现的各种危险攻击。为此,要分析系统中存在的各种安全漏洞,攻击出现的可能性等。   (5)存储容量   数据载体存储量的大小不同,系统的价格也不同。数据载体的价格主要是由电子标签的存储容量确定的。   对于价格敏感、现场需求少的应用,应该选用固定编码的只读数据载体。如果要向电子标签内写入信息,则需要采用EEPROM或RAM存储技术的电子标签,系统成本会有所增加。   基于存储器的系统有一个基本的规律,那就是存储容量总是不够用。毋庸置疑,扩大系统存储容量自然会扩大应用领域。只读载体的存储容量为20位,有源读写载体的存储容量从64B到32KB不等,也就是说在可读写载体中可以存储数页文本,这足以装入载货清单和测试数据,并允许系统扩展。无源读写载体的存储空间从48B到736B不等,它有许多有源读写系统所不具有的特性。   (6)RFID系统的连通性   作为自动化系统的发展分支,RFID技术必须能够集成现存的和发展中的自动化技术。重要的是,REID系统应该可以直接与个人计算机、可编程逻辑控制器或工业网络接口模块(现场总线)相连,从而降低安装成本。连通性使RFID技术能够提供灵活的功能,易于集成到广泛的工业应用中去。   (7)多电子标签同时识读性   由于系统可能需要同时对多个电子标签进行识别,因此,对读写器提供的多标签识读性也需要考虑。这与读写器的识读性能,电子标签的移动速度等都有关系。   (8)电子标签的封装形式    针对不同的工作环境,电子标签的大小、形式决定了电子标签的安装与性能的表现,电子标签的封装形式也是需要考虑的参数之一。电子标签的封装形式不仅影响到系统的工作性能,而且影响到系统的安全性能和美观。    对射频识别系统性能指标的评估十分复杂,影响到射频识别系统整体性能的因素很多,包括了产品因素、市场因素以及环境因素等。   

  • 发表了主题帖: 采用毫米波来统计和追踪人员

           如果楼宇能够实现真正的智能化,那将会为我们的生活带来怎样翻天覆地的变化?试想如果在一座商业建筑里,可以知道人们的位置、去向以及他们是否安全等信息,建筑系统可能会因此彻底改变。摄像机只有在需要时才会开启录制功能;照明和暖通空调(HVAC)系统可以根据实际使用情况更高效地工作;如果电梯中的人太多,电梯可以跳过在特定楼层的停顿。又想象一下人们可以像“星际迷航”中一样,想要穿过自动门时,门就会自动打开。   正如智能自主技术(包括自动驾驶汽车,无人机和机器人)将彻底改变人们和物体移动的方式一样,未来的建筑将使用智能传感器来自动调整系统,从而提高效率及舒适性并减少浪费。监测人们的位置并跟踪他们在室内外的行动是一项关键的感测功能,这可提高系统的智能化程度,创造未来的智能、高效、自动化建筑。   当今楼宇自动化领域的感测技术包括被动红外(PIR)、摄像机和主动红外(激光雷达、三维飞行时间)等,这些技术在准确性、隐私性、环境稳健性和系统复杂性方面都面临着挑战,使其无法有效地满足真正智能化的要求。   TI的毫米波(mmWave)技术创建了基于雷达的传感器,可以克服楼宇自动化中感测方面的难题。TI的毫米波技术可以提供感测范围内物体位置和速度信息的点云。由于该技术使用高射频,因此感测功能对于各种挑战性户外条件如强光、黑暗、雾气、烟雾和降水等依旧稳健。该技术还可透过塑料和干墙进行感测,因此可以隐藏在某些设备中,或实现更洁净的工业设计。   TI的毫米波传感器还可以满足室内人数统计应用的要求。图1展示了毫米波传感器的输出示例,该传感器忽略了桌椅并同时跟踪了多个人的位置。 由毫米波传感器产生的室内位置输出示例,该传感器同时追踪多个人相对于地面上所示的两个框的位置   利用集成的硬件处理和链接至产品档案"毫米波传感器板载的DSP内核,可实现完整的边缘处理,而无需使用复杂的系统拓扑或成本高昂的外部处理器。   在人数统计样品中链接至产品档案管理着所有用来追踪和统计的软件。无需外部处理器, 在样品中仅一个PC被用于可视化和配置。   链接至产品档案的人数统计样品中包含了所有在"链接至产品档案上人员追踪和静态杂波清除所需的处理和运算,降低了系统的复杂性,且无需使用外部处理器 采用毫米波雷达传感器的人员追踪和统计参考设计显示了该样品的工作原理以及如何使用" \o "链接至产品档案" 评估模块(EVM)对其进行复制。TI在毫米波软件开发套件(SDK)和资源管理器上的人数统计实验室中提供源代码,其中包括所有基本软件构建块、库和算法。该样品甚至包含多个支持长达6米和14米用例的示例。   如果这些示例不完全符合您的用例要求,您可以使用图3中显示的内置配置工具或按照调谐指南来调整性能。   在人数统计样品中,您可以使用PC可视化工具配置区域和计算检测区域;此工具基于MATLAB的源代码在TI资源管理器中作为参考提供。   未来,我们会在上采用C674x数字信号处理器(DSP),为楼宇自动化应用提供滤波和分类等其他算法。设想如果运动检测系统可以忽略物体轮廓,比如树木在风中移动或树叶飘落在地面,或者将疾驰而过的动物与人进行分类。启用边缘检测来确定是否应该跟踪对象,此功能将减少楼宇自动化系统中的错误检测。毫米波技术提供了范围、速度、角度、尺寸和反射率方面的大量信息,可与板载C674x DSP一起使用从而在单芯片解决方案中实现这些功能。

  • 发表了主题帖: 详解NB-IOT 揭开NB-IOT的身份之谜

          物联网通信技术种类较多,近些年兴起的NB-IOT通信技术如火如荼漫步开来,那么,究竟NB-IOT是何方神圣呢?计讯小编带你揭开NB-IOT的身世之谜。   一、NB-IOT是谁?   NB-IoT:基于蜂窝的窄带物联网(Narrow Band Internet of Things, NB-IoT)成为万物互联网络的一个重要分支。NB-IoT构建于蜂窝网络,只消耗大约180KHz的带宽,可直接部署于GSM网络、UMTS网络或LTE网络,以降低部署成本、实现平滑升级。   1.1 什么是蜂窝网络?   蜂窝网络或移动网络(Cellular network)是一种移动通信硬件架构,把移动电话的服务区分为一个个正六边形的小子区,每个小区设一个基站,形成了形状酷似“蜂窝”的结构,因而把这种移动通信方式称为蜂窝移动通信方式。     1.2 什么是窄带?   将网络接入速度为64Kbps(最大下载速度为8KB/S)及其以下的网络接入方式称为“窄带”,相对于宽带而言窄带的缺点是接入速度慢。   传输速率低,很多互联网应用无法在窄带环境下进行,如在线电影,网络游戏,高清晰的视频及语音聊天等。当然更无法下载较大文件。   举例:拨号上网是最常见的一种窄带。   1.3 什么是GSM网络?   全称:全球移动通信系统Global System for Mobile CommunicaTIon;   俗称:2G网络,近期将关闭   1.4 什么是UMTS网络?   全称:通用移动通信系统(Universal Mobile Telecommunications System)   俗称:3G网络,UMTS是整个3G移动通信网络的技术规范和协议,包括WCDMA(联通3G)、TD-SCDMA(移动3G)、CDMA(电信3G)等。   1.5 什么是LTE网络?   全称:长期演进(Long Term Evolution)   俗称:4G网络   LTE(Long Term Evolution,长期演进)是由3GPP(The 3rd Generation Partnership Project,第三代合作伙伴计划)组织制定的UMTS(Universal Mobile Telecommunications System,通用移动通信系统)技术标准的长期演进,于2004年12月在3GPP多伦多会议上正式立项并启动。LTE系统引入了OFDM(Orthogonal Frequency Division Multiplexing,正交频分复用)和MIMO(Multi-Input & Multi-Output,多输入多输出)等关键技术,显着增加了频谱效率和数据传输速率(20M带宽2X2MIMO在64QAM情况下,理论下行最大传输速率为201Mbps,除去信令开销后大概为150Mbps,但根据实际组网以及终端能力限制,一般认为下行峰值速率为100Mbps,上行为50Mbps),并支持多种带宽分配:1.4MHz,3MHz,5MHz,10MHz,15MHz和20MHz等,且支持全球主流2G/3G频段和一些新增频段,因而频谱分配更加灵活,系统容量和覆盖也显着提升。LTE系统网络架构更加扁平化简单化,减少了网络节点和系统复杂度,从而减小了系统时延,也降低了网络部署和维护成本。LTE系统支持与其他3GPP系统互操作。根据双工方式不同LTE系统分为FDD-LTE(Frequency Division Duplexing)和TDD-LTE (Time Division Duplexing),二者技术的主要区别在于空口的物理层上(像帧结构、时分设计、同步等)。FDD系统空口上下行采用成对的频段接收和发送数据,而TDD系统上下行则使用相同的频段在不同的时隙上传输,较FDD双工方式,TDD有着较高的频谱利用率。     1.6 “180KHz的带宽”意味着什么?   4GLTE最小带宽是1080kHz(1.4MHz),对应最低传输速率是6Mbps;   4GLTE最大带宽是198,000kHz(20MHz),对应最高传输速率是110Mbps;   “180KHz的带宽”属于窄带,与NB-IoT(基于蜂窝的窄带物联网)相符合。     二、NB-IOT从哪来?   2.1 物联网时代的到来   随着网络连接、云服务、大数据分析和低成本传感器等所有核心技术的就绪,物联网已经从萌芽期步入迅速发展的阶段。预计未来全球物联网连接数将是千亿级的时代。     2.2 物联网的现状   目前的通信模式正在从人和人的连接,向人与物以及物与物的连接转变,已经出现的大量物与物的联接大多数是通过蓝牙、Wi-Fi等短距通信技术承载。   蓝牙、Wi-Fi等技术收集的数据都是传到用户手机等分散终端上,难以形成大数据,且数据准确率低、耗电量大;而且传统的2G、3G、4G网络并不能满足物联网设备低功耗、低成本的要求。   2.3 物联网的理想需求   物联网的理想需求应该是:低功耗、低成本、易部署、易使用、易维护、数据易收集、具有海量连接的能力、满足移动性......   2.4 物联网,我来了   为了满足物联网的需求,2014年5月,华为提出了窄带技术NB M2M;2015年5月融合NB OFDMA形成了NB-CIOT;7月份,NB-LTE跟NB-CIOT进一步融合形成NB-IOT;2016年7月NB-IOT标准在3GPP R13中发布,至此标准化工作完成,NB-IOT即将进入规模商业化阶段。     2.5 NB-IoT的优点   A)广覆盖,数据易收集,NB-IoT将提供改进的室内覆盖,在同样的频段下,NB-IoT比现有的网络增益20dB,相当于提升了100倍覆盖区域的能力;   B)具备支撑海量连接的能力,NB-IoT一个扇区能够支持10万个连接,支持低延时敏感度、超低的设备成本、低设备功耗和优化的网络架构;   C)低功耗,NB-IoT终端模块的待机时间可长达10年;   D)低成本,更低的模块成本,企业预期的单个接连模块不超过5美元;   E)易部署,可以利用现有的蜂窝网络部署,截至目前,蜂窝网络覆盖了全球超过50%的地理面积,90%的人口,是一张覆盖最为完整的网络;   F)可移动,依赖蜂窝网络。     2.6 NB-IoT的缺点   A)传输速率低,无法传输实时音视频等;   B)流量费用,需要给移动运营商交一定费用,蓝牙、wifi、ZigBee等是免费的,但相比2G、3G、4G等,费用较低   三、NB-IOT要到哪去?     3.1 支持NB-IoT的巨头们   华为、中兴、中国电信、中国移动,中国联通,爱立信,阿联酋电信,GSMA,GTI,英特尔,LG Uplus,诺基亚,高通,意大利电信,西班牙电信、沃达丰、AT&T......       3.3 涉及到的领域   A)、NB-IoT可以广泛应用于多种垂直行业,如远程抄表、资产跟踪、智能停车、智慧农业、智慧环保等;   B)、新生行业:如车联网、智慧医疗、智能家居、可穿戴电子产品等;   C)、可代替大部分蓝牙、ZigBee、wifi等。

  • 2019-07-12
  • 发表了主题帖: C2000 的集成电力线载波通信功能(PLC)光伏逆变系统

       摘要   通信功能作为光伏逆变系统不可或缺的重要组成部分,其主要用于对分布式逆变器状态的远程监测和控制。电力线载波通信(以下简称“PLC”)是指将已有的电力线网络作为通信媒介实现通信的一种方法,将 PLC 功能加入光伏逆变系统,相对于其他类型通信方法而言,可以更好地降低成本、简化系统复杂性。本文着重介绍一种基于TI 的 TMS320F28035(以下简称“F28035”)和TMS320F28069(以下简称“F28069”)的单芯片光伏逆变器+PLC 解决方案,并给出系统框图及软件流程图。   1 具有PLC 通信功能的光伏逆变器应用介绍   太阳能作为一种可再生能源,近两年已经在国内外成功用于并网发电。光伏逆变设备从功率上来看大致可划分为三个等级:输出功率大于6KW 的三相大功率逆变器、输出功率在1KW 至6KW 之间的单相中型逆变器以及输出功率在 200W 至 500W 的微逆变器。大功率逆变器的成本高,效率相对较低,并且一般采用集中式拓扑,所以其对通信功能的需求量较少。与之相比,中小功率逆变器近年来在光伏发电市场上受到了更多的关注。   由于中小型逆变器本身功率不大,所以其更多用于微电网中的分布式太阳能发电系统。作为微电网的一个节点,其会在某个区域内有较大数量和较广范围的分布,例如在欧美地区,很多家庭会在屋顶安装这样的中小功率逆变器;在火车站或者工厂的屋顶会使用大量的中小型逆变器来搭建小型电站等等。这样就需要对一定区域内的逆变器进行管理,以便其更有效、安全、稳定的工作并且提供及时的需求和响应,而管理方法就是配以通信模块,以便通过上位机监测所有逆变器状态,并及时进行控制和调度。   无论是白天或者夜晚,我们都需要实时了解控制器的情况,例如逆变器当前工作状态、太阳能电池板的最大功率点追踪情况、当天/当月/当年等的发电千瓦时、当前输出功率/电压/电流等数据都需要被监控。如果使用中小功率逆变器搭建大功率的发电设备,则还会涉及单个发电设备功率因数的调节、防孤岛保护以及多个逆变器之间的相位同步等参数的控制。   从目前来看,最常见的方法就是通过无线(RF)或者RS485 技术通信。PLC 利用已有的电力线进行传输数据,不需要像 485 总线那样重新铺设新的线路,并且还可以在低成本的情况下实现有效的通信,其相对于 RF 可靠性更高,但相对于 RS485 在鲁棒性上则需要更多的设计优化。通过加入PLC 模块,光伏逆变系统就成为为微电网的一个节点,可以接受任何在智能电网上传输的数据,有利于今后进一步的功能扩展。   图 1 使用PLC 通信的光伏逆变设备区域系统结构   图 1 就是一种带有 PLC 功能的光伏发电设备的区域系统框图,在一定区域内给并网的光伏逆变设备安装 PLC 收发设备后,以电力线为总线来通信的拓扑结构。在距离和数量一定的设备之间,需要一个收发调制解调器来进行区域内的数据处理,并且还可以为其扩展上位机从而将数据通过上层网络进行传输。   2 PLC 方案介绍   2.1 PLC 概况及TI PLC 方案介绍   PLC 技术总体来说可以分为宽带(Broad-band)PLC 和窄带(Narrow-band)PLC 两大类,宽带PLC 速度一般大于1MBPS,应用于Internet 互联网等local area network 广域网连接的场合;窄带PLC(以下简称“NBPLC”)适用于长距离、低传输速度、只需窄带控制或者宽数据采集的场合 [1] 。而中小型光伏逆变设备往往对于其通信模块需要数据高可靠性以及低成本的要求,所以 NB PLC 会更适合于该应用。   目前 PLC 调制技术主要有三大类:单载波类(例如 FSK)、扩展频谱类(例如 S-FSK)、多载波类(例如 OFDM)。前两种从调制方式上看大体可以概括为单载波调制方法,是目前使用比较多的一种技术,其特点就是原理简单,但是速度较慢、鲁棒性也较低。而多载波即 OFDM(正交频分复用调制)是一种更加稳定且数据速率更高的调制技术,其原理就是在单一信道、同一时域传输过程中同时会有多个频率的载波信号进行传输,并且每个载波可以根据需求采用不同的调制方式。相对于单载波调制技术,其优点如下:1)低于 500 KHz 的 PLC 信号能够穿越变压器,因此具有很好的传播特性;2)NB PLC 在使用 MCU或 DSP 实现时具有较好的成本效益;3)在窄带干扰(以下简称“NBI”)和短脉冲干扰(Impulse)下有很强的鲁棒性(Robustness);4)频率选择性信道的响应(阻抗特性)较好;5)能够与已有的单载波技术(FSK, S-FSK)共存 [1] 。6)无需与主电网过零点同步,因此可以用于直流应用 (如微逆)。   图 2 NB PLC 的调制方式   当前,基于OFDM 技术的NB PLC 的PRIME/G3 标准已经进入了实际部署阶段。而IEEE P1901.2和ITU-T G.hnem 两大国际标准也即将制定完成。TI 在OFDM 的软件开发上有很好的积累,提供了一系列针对各种不同标准的固件库,开发人员使用这些固件库的函数来进行开发时,不需要关心其底层设计的复杂时序,并且可以高效灵活的根据自己的需求进行产品定制。图3 是TI 的PLC 开发软件库(plcSUITE)。   图 3 PLC Suite 结构框图   TI 提供的plcSUITETM 软件库解决方案中,包括了已经实际部署PRIME/G3 协议栈,以及TI 定义的PLC Lite 标准。PLC Lite 是TI 在PRIME 标准上进行优化得到的一个基于OFDM 的软件库,下一节会具体介绍其特性。除了提供软件开发固件库外,TI 还提供整套的解决方案包括硬件模拟前端模块,如图4所示,C2000 可以作为数字调制解调及网络协议栈实现的处理器,可以使用plcSUITETM 中提供的库来进行软件开发,并且将调制好的物理层信号通过SPI 发送至作为模拟前端的AFE031/AFE030,然后通过AF031/AFE030 将数据信号耦合至电力线发送。   图 4 TI NB PLC 解决方案   2.2 TI PLC Lite 标准介绍 [2]   PRIME 和G3 标准在制定之初,主要应用对象是类似远程抄表等终端节点多且距离远、传输数据量大的应用,所以在PRIME 和G3 标准中会包括物理层、媒体层、逻辑链路层、以及更上层(例如在适配层支持IPV6 及IEC61334-32 等)网络层协议。而对于光伏逆变设备,其数据量不大并且在当前大多数应用中,其组网方式相对较简单所以并不需要一个复杂网络协议栈。TI 定义了一个低成本且相对简单的标准PLCLite 以应用于光伏逆变、路灯控制等相对简单灵活的网络。而PLC Lite 本身是由PRIME 标准优化而来,所以其稳定性也可以得到保证。其特性如下:(1) 可使用TMS320F28035 contorlCARD 或TMS320F28069 contorlCARD 作为主控模块;(2)支持PLC Add-on AFE031 模拟前端驱动模块;(3)支持47K~90K 半频段(欧洲CENELEC A 频段标准)、40K~150K 半频段(24K 欧洲CENELEC A /B/C/D 频段标准);(4)最高传输速率为21Kpbs(不使用前向纠错)、11Kpbs(使用前向纠错);(5)采用OFDM 调制方式、使用前向纠错功能、每个频率载波采用DBPSK 调制技术;(6)40K~90K 频段子载波数量为97 路(1 路导频,96 路数据);(7)带有重复码纠错功能、CRC8 错误校验、重复码和RS 前向纠错算法;(8)可通过UART 发送指令进行调试;(9)可编程控制AFE031 增益;(10)具有PRIME 标准物理层特性、增强的NBI 性能以及支持MAC 层扩展。   图5 PLC Lite 物理层特性参数                                                    3 系统设计方案   一般来说,带有通信模块的光伏逆变系统都会采用逆变系统外加通信模块的方式来实现,即在一个逆变系统中,加入相关的通信协议,并通过SCI/SPI 等通信手段与外加的通信模块进行短距离通信,再由通信模块将其发送至外部网络。本章节介绍两种光伏逆变器+PLC 的系统拓扑,并对其特点进行分析。   3.1 PLC 外部独立模块系统   图6 所示为PLC 外部独立模块的系统,这样的系统拓扑模块化较好,灵活度较高。由于PLC 会占用MCU 大量的片上ADC 资源,因此PLC 和逆变系统如果分别独立开发设计则可以降低光伏逆变系统主控MCU 的负载率。该方案可选择相对性能较低(ADC 相对速度较慢、片上RAM/FLASH 容量相对较小等)的MCU 以降低系统成本,但其缺点在于多芯片方案导致外围电路设计复杂且系统成本增加,同时性能较低的MCU 亦限制了光伏逆变设备总体性能的提高。一般在通信功能为可选的系统(如光伏微逆变器)中会倾向于此类拓扑设计。   图 6 光伏逆变系统PLC 外部独立模块系统框图   图6 为一种基于TMS320F28035 的带有PLC 通信功能的光伏逆变系统。其中光伏逆变部分采用两级隔离方式,前级DC/DC 完成MPPT 功能,后级IGBT 模块完成单相逆变,主控系统为两颗F28035(认证要求)LC 模块部分则由另一颗F28035 单独控制,光伏逆变中的一颗主控F28035 只需将数据通过SCI/SPI 发送至PLC 模块,PLC 模块则通过AFE031 及电力线将数据发送至网络。因此该系统总共需要使用3 颗MCU 来实现。   3.2 PLC 内部集成系统   从图4 可以看到,TI 的PLC 方案硬件系统可分为两部分:MCU 和模拟前端。MCU 负责所有的信号接收、解析、处理及发送;模拟前端只负责发送和接收数据:发送——通过MCU 的片上SPI 模块(无需D/A 转换)传送的离散信号经D/A 转换成连续信号后放大并耦合至电力线;接收——将电力线上的调制信号采样匹配后输送至MCU 的片上ADC 单元进行离散采样。通过该分析可以发现,只要光伏逆变的主控MCU 性能足够,即可将TI PLC 方案的软件部分完全移植至该主控MCU 中。   对于需要PLC 功能的光伏逆变设备,该集成拓扑相对于图6 来说主要减少了一颗高性能的实时控制MCU,因此系统成本明显降低,但需要注意的是在该MCU 选型时必须考虑采较强处理能力的内核和外设。理论上来看PLC 部分和光伏逆变的软件算法可以全部由一颗MCU 完成,但其中仍存在技术难题,例如ADC 的采样时序冲突——光伏逆变的PWM 载波频率一般在10K~30KHz,所以ADC 对于电流电压的采样也会与其一致,而PLC-Lite 的 ADC 采样频率最低为250KHz,且两者在采样时均需要ADC 产生中断处理来数据,该问题是此类系统必须要解决的;又如MCU 在性能与成本之间的折衷——基于OFDM 的PLC 需要高速ADC 采样,因此需要大容量RAM 和强大数据处理能力的MCU;逆变系统和PLC 系统都需要很强的实时处理性能。考虑到以上需求,如选用专用DSP 芯片不但增加系统成本,还会增加开发难度,因此如何选用一颗专用MCU 来并行实现光伏逆变和PLC 的相关运算是至关重要的。C2000 由于具有出色的实时控制性能,可以很好地解决上述问题。   4 TMS320F28069简介   TMS320F28069 是C2000 Piccolo 系列MCU,基于C2000 的实时处理C28 内核、硬件浮点运算器和90MHz 的主频使其拥有强大的实时运算能力, 具有256K 字节的片上Flash 和100K 字节的片上RAM;6 通道的DMA 可将ADC 等外设数据进行快速传输。针对光伏逆变系统,F28069 拥有转换时间为325ns 的12 位16 通道SAR 型ADC 以及19 路高性能PWM 和8 路超高分辨率PWM,可以输出最高达150ps 分辨率的PWM 信号。同时,针对基于OFDM 的PLC 通信,TI 增加了TMS320C2000 MCU 指令集,新增加的指令集由紧耦合的硬件单元VCU(Viterbi, Complex Math, CRC Unit)单元来实现,此运算单元可专门用于运算基于OFDM 的PLC 的大容量快速傅里叶变换(FFT)以及生成前向纠错码(FEC)和CRC 校验码,其内部还有一个浮点协处理器——控制率加速器(CLA),可与主内核并行运算以及拥有和主内核相同的外设使用能力,并且可使用C 语言在CCS 环境下进行编程。CLA 最多有8 个任务,每个任务都可以由外设(ADC/PWM/定时器)或软件触发。图7 为F28069 的性能和外设资源列表[3]。   图 7 F28069 性能和外设资源   5 基于F28035 和F28069 的集成PLC 通信功能光伏逆变系统   PLC 在通信时会占用较多的MCU 资源,所以在DC/AC+PLC 的单MCU 解决方案中,F28069 的主内核进行PLC 运算,其中ADC 的中断用于PLC 的高速采样及处理;F28069 内部的CLA 则用于逆变控制系统, 每次PWM 匹配事件发生后,触发CLA 读取ADC 转换结果然后更新逆变全桥的IGBT 驱动PWM信号占空比。   5.1 系统结构框图   图 2 C2000 光伏逆变系统PLC 内部集成系统框图   如图8 所示,光伏电池最大功率点追踪部分采用交错式BOOST 拓扑,由F28035 控制;母线电压通过LLC 隔离后输送至后级DC/AC 部分。F28069 则运行DC/AC 和PLC 两部分代码。DC/AC 部分为单相逆变全桥,PLC 部分则通过AFE031 模拟前端将数据耦合至电网。两颗MCU 通过UART 进行数据通信。   5.2 DC/AC 系统软件框图   为便于系统调试,DC/AC 部分系统分成3 个Level:Level1:开环系统;Level2:无PLL 闭环系统;Level3:带PLL 可并网系统。软件由5 个功能模块组成:主函数、CLA Task、PLC Run 函数、ECap1 中断和SCIB 中断。   主函数由两个部分组成:(1)内核、外设、变量的初始化;(2)任务状态机。函数开始部分,进行主内核运行变量、CLA 以及PLC 代码的初始化。然后进入PLC Run 函数、Task A、B、C 四个任务的轮询运行阶段。PLC Run 函数的功能为PLC 数据接收、发送、解析以及相关变量更新;Task A 为每毫秒运行一次的Task A0 函数,其中存在 A1 和A3 两个有效子函数。A1 的功能为每20ms 检测系统标志位并且更新当前系统状态;A3 轮询当前功能按钮状态以及发出LED 指示灯控制信号。Task B 是5ms 轮询的Task B0 函数,其中有 B1,B2,B3,B4 四个有效任务。B1 的功能是故障检测和系统欠过流、欠过压的保护;B2 主要进行参数运算,主要为线电压有效值、线电流有效值、当前输出功率的值等;B3用于系统运行状态检测;B4 的功能是处理两颗MCU 间的通信以及F28069 和GUI 之间的通信。Task C为0.5ms 运行一次的Task C0 函数,它用于检测SCIA 通信状态。   第二部分是CLA Task,分为Task 8 和Task 3。Task 8 在CLA 初始化时就通过软件触发,其功能主要是数字电源算法库DPLIB_C_CLA 以及CLA 运算参数初始化。Task3 是PWM3 事件匹配触发,同时会触发ADC SOC。Task 总体分为两部分:上升沿触发阶段和下降沿触发阶段。 下降沿触发阶段:如果触发任务时PWM 处于下降沿计数则运行此部分程序。其主要功能是运算线电压、电流的周期有效值,母线电压周期平均值、输出视在功的值并将其存于制定变量等待主内核读取。   上升沿触发阶段:此阶段同样在触发并且PWM 时基情况下运行。首先是读取外部采样电压、电流值,然后调用数字电源算法库函数中的2P2Z 模块进行母线电压调节(与DC/DC 板连接时有效,独自运行时使用常数作为输出结果)并将运算结果作为其中之一的参数输入电流环基准乘法模块。接下来会判断并网标志位状态,如果已经置位即表示当前为并网运行状态,则进行数字PLL 运算。如果此时为离网运行状态,就跳过此部分进行电流内环调节环运算。最后将电流环运算结果转换为PWM 占空比值用存入相应寄存器。   第三部分ECap1 中断服务程序用于检测电网相位和频率,作为PLL 的锁相基准。   第四部分SCIB 中断用于F28069 与前级F28035 通信。F28069 通过SCIB 采集前级DC/DC 的运行状态,并将其上传至上位机显示。   第五部分是整个系统的关键部分PLC Run 函数,在第一部分已提到,该函数会在系统状态机每次轮询的时候调用,其内部的定时器中断、ADC 中断服务函数以及底层解码函数都封装在PLC Lite 中。只需先设定中断函数入口地址、系统频率等参数后,调用初始化函数HAL_afeInit(), 即可完成底层外设的初始化。   整个系统的关键在于ADC 的复用和同步,上文已经提及,ADC 在PLC 中的采样频率为250KHZ,为了保证ADC 采样的同步,逆变系统的载波周期就必须与其成倍数关系,同时,由于输出正弦信号需为50HZ,所以同时也需要是50HZ 的倍数,由于IGBT 的开关频范围有限,故选择25KHZ 为输出SPWM信号的载波频率。这样PLC 每进行10 次采样,逆变部分的信号进行1 次采样,并且通过EPWM 模块的同步功能可保证两者的采样不冲突。 PLC 部分占用的ADC 会触发主内核中断。而逆变部分则如前文所述触发CLA 运算,这样系统就在同一时间并行运行两种功能,减小了整个系统的时间复杂度并且增加了MCU 的利用率。图9 为系统软件流程图。   图 9 F28069 PLC 内部集成系统软件流程图   6 总结   本文主要介绍了带有电力线载波通信功能的光伏逆变系统拓扑结构以及 TI 的 PLC 方案和集成 PLC功能的光伏逆变系统。PLC 由于其天然优势,十分适合作为一种低成本高性能的通信技术应用于需要与电网相连的产品中,而将其加入当前关备受关注的光伏逆变系统,是必然的发展趋势。   在中小型光伏逆变系统分布式发展的趋势下,通信功能在将来一定会是每个并网逆变器的必备功能,而TI PLC 方案的灵活性使其既可以外加于光伏逆变系统,也可以集成于系统内部,从而满足各种不同客户的系统需求。并且 TI 仍然在持续的开发针对于带有 PLC 功能的光伏逆变系统,例如将更复杂的PLC 标准加入光伏逆变系统。通过 PLC 进行传输数据,对于光伏逆变系统,无疑有着多方面巨大的优势,并且也将进一步推进物联网概念的实施普及,TI 将推出更多关于PLC 应用的方案,使开发人员可以更快的完成产品设计。   参考文档   [1] TI 窄带电力线通信(NB PLC)解决方案介绍(ZHCA433)   [2] TI PLC Development Kit User Guide   [3] TMS320F28069, www.ti.com/product/tms320f28069   [4] AFE031, www.ti.com/product/afe031   附录   图10 AFE031 典型应用原理图                                 

  • 发表了主题帖: C2000 MCU实施并网微型太阳能逆变器

    可再生能源应用的迅猛发展将引发第四次工业革命。光伏发电是整个可再生能源方案的关键部分。在所有太阳能逆变器中,微型太阳能逆变器是至关重要的组成部分。 本文将为您介绍如何利用一个TMS320F2802设计一种低成本、高性能的微型太阳能逆变器。另外,文章还将讨论如何使用交叉式有源钳位反激和SCR全桥实现一个220W输出的微型太阳能逆变器,并介绍完整的系统固件架构和控制方法。最后,文章还会为您展示实验室波形。 1 概述 1.1    太阳能逆变器介绍 材料、能源和信息是人类生存和发展的三大要素。能源利用的每一次新发现,都会极大改变和促进现代文明的发展: 蒸汽机的发明让我们进入机器时代。 电的发明让我们进入电气时代。 半导体晶体管的发明让我们进入信息时代。 当前可再生能源的发展和利用将引发第四次工业革命;在所有可再生能源利用方法中,光伏发电是整个可再生能源发展的关键组成部分。根据世界能源组织预测,随着传统能源(例如:煤炭、石油等)逐渐枯竭,可再生能源将成为人类的主要能源。图1显示了世界能源的发展趋势。 下载全文:

  • 发表了主题帖: DSP 库拓宽TI驾驶辅助系统的嵌入式视觉引擎

    基于 TI  SYS/BIOS RTOS 的TI 视觉 SDK 能够在众多的异型内核上并行运行多种算法,并更加容易地将新功能集成到系统之中。此外,丰富齐全的调试与仪表测量特性还允许算法开发人员在系统环境中对其算法进行基准测试和特性描述。   另外,TI 还在 TDA2x 片上系统 (SoC) 上提供了可用于其嵌入式视觉引擎 (EVE) 和数字信号处理器 (DSP) 的程序库。这些程序库包含了 200 多种用于 EVE 和 DSP 库的优化功能,从而为客户及第三方提供了旨在实现跨越式开发和加快产品上市进程的构件。EVE 和 DSP 库可用于中低级和高级视觉处理。在 2014 年国际消费电子展 (CES 2014) 上,TI 进行了一项环绕视图演示,以及采用 EVE 和 DSP 库构建的业界首例 1080p60 密集光流的实时演示。   类别 EVE 和 DSP 库范例 低级处理 积分图像,梯度,形态运算,直方图 中级处理 HoG,rBRIEF,ORB,Harris, 光流 高级处理 卡尔曼 (Kalman) 滤波,自适应强度算法 (Adaboost)   TI 的 TDA2x 系列 整合了创新 Vision AccelerationPac 的 TDA2x 在低功耗封装中将高性能、视觉分析、视频、图形以及通用处理内核进行完美结合,可实现从入门级到高性能的广泛 ADAS 应用。此外,TI 独特的 Vision AccelerationPac 能够以相同的功率预算实现超过 8 倍的计算性能,从而在更低成本下充分满足高级视觉分析的需求。Vision AccelerationPac 建立在 TI 丰富的算法知识基础之上,并专为满足 ADAS 市场的动态需求而设计,其包含一个或多个嵌入式视觉引擎 (EVE),可提供目前市场上其他同类产品所无法提供的特制 ADAS 加速器。   稳健的第三方生态系统 TI SoC 和软件产品库的壮大促使越来越多来自世界各地的 ADAS 第三方供应商在 TI 宽广的产品线上提供算法、服务和集成支持,从而使客户能够缩减内部投资和开发时间,并加速产品上市进程。该第三方生态系统中的很多厂商都使用了 TI 的 ADAS 处理器,并对最新 TDA2x 产品的发布表示极大的欢迎:   ADASENS Automotive GmbH 的研发总监 Michael Stoecker 说:“TI 的 EVE 为诸多 ADAS 机器视觉算法提供了令人印象深刻的性能,例如:根据运动来识别交通信号、车辆或行人以及建筑物。”   IAV Automotive Engineering 的资深项目经理 René Röllig 说:“TDA2x SoC 与 SDK 的组合使得我们能够开发下一代的 ADAS 系统,从而及时满足基于摄像头的视觉系统不断攀升的特性与性能要求。TI 的生态系统让我们可以高效地实现算法和应用,这在以前是做不到的。新型 EVE 是一款功能强大的伙伴加速器,其运作既可与独立于 DSP,也可与 DSP并行。它在我们的目标应用中展现了其全面的性能,尤其是针对基于帧的图像处理。开发工具、库和文档都是最新的,由于其品质卓越,所以我们的工程师很喜欢使用这些工具。”   TCS 的工程与工业服务全球总监 Regu Ayyaswamy 说:“凭借深厚的技术与汽车工业专长,Tata Consultancy Services (TCS) 公司在 TI 的 ADAS SoC(包括最新推出的 TDA2x)上为全球汽车 OEM 厂商及汽车零部件一级供应商提供了优化、集成服务和算法。在 ADAS 解决方案的开发方面,TI 是我们的战略合作伙伴,我们期待不断地开发出市场最需要的解决方案。”   Supercomputing Systems AG 的嵌入式与汽车产品部主管 Felix Eberli 说:“ 每一代 TI ADAS SoC 性能的大幅跃升都让我感到兴奋。已经证明:这对于我们针对不同的汽车零部件一级供应商和 OEM 厂商而移植到 TI SoC 的大量 ADAS 算法是有益处的。一个关键的差异化因素是具有高吞吐量和零开销背景数据传输特性的节能型 EVE 内核。” CSSP Inc. 总裁 Chao-Jung Chen 博士说:“TI 一直在为 ADAS 领域提供业界最佳的 SoC,因而使得我们的团队能够在 TI 的 SoC 平台上开发出生产质量的 ADAS 算法以提供给 TI 的客户,如车道偏离告警、前部碰撞告警和盲点探测。今后,我们将致力于在 TI 的下一代 TDA2x 平台上提供我们的最新算法,以利用单颗芯片实现多重功能。”   D3 Engineering 的总裁兼首席技术官 (CTO) Scott Reardon 说:“TI TDA2x 中的 EVE 以低功耗为 ADAS 应用中的视觉和视频分析算法提供了无与伦比的计算性能。EVE 软件工具的集成连同 Code Composer Studio IDE 一起简化了我们的工作流程,而其提供的范例则有助我们很快地在嵌入式 ADAS 应用中运用 EVE 所具备的强大功能。”

  • 发表了主题帖: KeyStone DSP 与 VID 功能同步降压转换器的原理图

    一个额定电流为 15A 的 500KHz 降压转换器负责为 CVDD 供电。该设计可使用连接至 VID 编程器的 4 线数字接口实现 VID 控制,其可直接连接至任何模拟功率级或控制器。 KeyStone DSP 与 VID 功能同步降压转换器的原理图     LM10011 与模拟 PWM 功率级 LM10011 不仅可采集出现在 DSP VCNTL 接口上的 VID 信息,而且还可设置连接至功率级电路反馈 (FB) 引脚的电流 DAC 输出。在 6 位模式下,既提供支持 940nA 分辨率的 64 种电流设置,又提供优于 1% 的误差精度。在本例中,CVDD 由 DSP 判定为一个电压介于 0.9V 至 1.1V 之间的电平,支持 6.4mV 的步进分辨率。无需电平转换器或胶合逻辑,电阻器 RSET 可决定启动时的 CVDD 电压。LM10011 可与任何具有 FB 输入的电压、电流或 DCAP 模式 PWM 调节器连接。

  • 发表了主题帖: DSP 功率预算数字输出电压调节

    本帖最后由 灞波儿奔 于 2019-7-12 20:48 编辑        SP、FPGA 以及 ASIC 现在具有类似的功能,可根据器件活动、电源及时钟域配置、工作模式以及工作温度,实现最大限度的功耗降低。虽然支持 VID[1] 的数字化脉宽调制器 (PWM) 控制器解决方案可用来满足这一需求,但确实也需要对无处不在地模拟控制负载点 (POL) 稳压器进行输出电压数字化调节。在调节过程中,可轻松调整模拟电源实施(或许已经完成设计或已经通过测试台测试),满足其它方案无法实现的系统级功率预算与成本目标要求。 数字输出电压调节         鉴于上述设计目标中的优势利益,TI 现在提供一款 VID 编程器[2]作为专用标准产品 (ATSP)。图 1 是用于补充模拟型 POL DC/DC 解决方案的 LM10011,其包含高精度数字可编程电流数模转换器 (IDAC),支持模式可选 4 位及 6 位 VID 接口。IDAC_OUT 引脚的精确 DC 电流与 4 位或 6 位数字输入字成比例,可输入到输出稳压环路的反馈 (FB) 节点。随着输入字的累加,IDAC_OUT 电流可降低,从而可根据稳压器反馈电阻器调高输出电压设置点。FB 节点一般由模拟控制环路的误差放大器保持在恒定电压下。   图 1:常规 POL 稳压器与电流 DAC 配对,构成 6 位数字 VID 接口       该实施过程中最为重要的是 VID 解决方案与模拟 POL 稳压器设计方案的兼容性。POL 可有效部署为 DSP 的从设备。根据设计,该 IDAC 解决方案可帮助 DSP 及其它数字负载实现其全面的节电性能,降低功耗,例如在通信基础设施应用中。实际上,该款 VID 解决方案主要用于与任何 POL 稳压器一起工作,调节 KeyStone™ 多核 DSP [3] 等支持 VID 功能的处理器的内核电压 (VCORE)。 DSP 内核电源        图 2 是同步降压 POL 稳压器提供的、具有内核电压 CVDD 的多核 DSP 原理图。电源级包括 15A 电压模式稳压器、560nH 电感器以及陶瓷输入输出滤波器电容器[2]。来自 DSP 的 6 位 VID 命令有助于根据 DSP 性能要求的不断变化调节输出电压 VOUT。   图 2:使用可调节性受 VID 控制的同步降压稳压器为支持内核电压轨的多核 DSP/SoC 平台供电        根据图 2 所示的系统实施方案,具体控制方案针对 6 位 VID 使用了 4 线 (VCNTL) 接口,从而可在 VID 工作中实现更高的分辨率或精细粒度。IDAC_OUT 电流具有 59.2µA 的最大满量程范围 (VID[5:0] = 000000b = code 0)。在 6 位模式下,这可提供分辨率为 940nA 的 64 种设置以及优于 1% 的误差精度。 输出电压由 DSP 判定为电压介于 0.7V 至 1.103V 之间的电平。这相当于 VOUT 调节分辨率为 403mV/63 或 6.4mV。压摆限制可防止输出发生突变。而 VID 的抗尖峰脉冲滤波器则可提供噪声抗扰度(实际上是在 VID 线路的转换与 IDAC_OUT 电流的后续变化之间添加一个小小的延迟)。在接收到 VID 命令之前的启动过程中,IDAC_OUT 电流可根据 RSET 值,假设为 16 个分立电平之一。这允许 DSP 的内核电压在各种电平下上电,实现更高的系统灵活性与可靠性。       但值得注意的是具体的 DSP 可能无法支持所有的电压或范围。例如对 KeyStone I DSP 而言,预期工作范围在代码 31 和 50 之间(0.905V 至 1.020V)[4]。图 2 中 LM10011 的电源电压来自输入总线。另一种选项是使用 PWM 控制器提供的、或系统中其它地方(如果有)提供的额定 3.3V 或 5V 偏置电压轨。无需在 DSP 和电流 DAC 之间使用电平转换器或胶合逻辑。       有关 VID 接口及相关定时细节更加详细的说明。VCNTL[2:0] 可为每个 VID 代码承载两位数据。处于低或高电平的 VID 分别可用来选择较低及较高的数位,而处于高电平的 VIDS 也可锁存 VID 命令,从而可使用 40µs 时间常数初始化 IDAC_OUT 的电流变化。       因此每次电压调整都要求从 DSP 到控制器的两次对头拼接的访问。第一次访问写入较低的三位,第二次访问写入较高的三位。  

  • 2019-07-11
  • 发表了主题帖: DSP数字图像设计报告

    项目报告 摘  要 图像处理是指按特定的的需要突出一幅图像中的某些信息,同时削弱或去除某些不需要的信息,它是一种将原来不清晰的图像变得清晰或强调某些感兴趣的特征,改善图像质量,丰富信息量,加强识别效果的图像处理方法。 图像处理就是增强图像中用户感兴趣的信息,其主要目的有两个:一是改善图像的视觉效果,提高图像成分清晰度;二是使图像变得更有利于计算机处理。   目      录   一、数字图像的直方图统计              3 二、数字图像的取反              3 三、数字图像的锐化laplace算子              4 3.1数字图像锐化的方法              4 3.2图像锐化的主要用途              4 3.3数字图像的锐化laplace算子               5 四、心得体会              6 五、参考文献6   引言 图像增强的方法是通过一定手段对原图像附加一些信息或变换数据,有选择地突出图像中感兴趣的特征或者抑制(掩盖)图像中某些不需要的特征,使图像与视觉响应特性相匹配。其主要目的有两个:一是改善图像的视觉效果,提高图像成分的清晰度;二是使图像变得更有利于计算机处理。图像增强技术根据增强处理过程所在的空间不同,可分为基于空间域的算法和基于频率域的算法两大类。空间域方法直接对图像像素的灰度进行处理。变换域方法在图像的某个变换域中对变换系数进行处理,然后通过逆变换获得增强图像。直方图均衡化算法是图像增强空域法中的最常用、最重要的算法之一。它以概率理论作基础,运用灰度点运算来实现直方图的变换,从而达到图像增强的目的。                       正   文 数字直方图的直方图统计    灰度直方图是灰度值的函数,描述的是图像中具有该灰度值的像素的个数,其横坐标表示像素的灰度级别,纵坐标是该灰度出现的频率(像素个数与图像像素总数之比)。把直方图的灰度值进行统计,方便图像处理的进一步操作。                    二、数字图像的取反 2图像是有一个个像素组成,每个像素有不同的RBG值,比如121,122,95,分别代表不同的色深。所有的颜色都能由这三个数表示。最大值分别为255。图像取反就是用255减去这三个值。将图像按像素按位进行求反,求反处理的图像与原始图像“黑白颠倒”,可以看清原始图像中灰黑区域的情况 设输入图像为f(x,y),反色后的图像为g(x,y), 那么图像反色的方法为:        g(x,y)=255- f(x,y)   原图 取反后图片   三、数字图像的锐化laplace算子    图像锐化是一种使图像原有的信息变换到有利于人们观看的质量。进行图像锐化处理有两个目的:一是增强图像边缘,使模糊的图像变得更加清晰。二是希望经过锐化处理后,目标物体的边缘鲜明,以便于计算机提取目标物体的边界、对图像进行分割、区域形状提取等。 3.1 数字图像锐化的方法 图像锐化一般有两种方法:一种是微分法,另一种是高通滤波法,而拉普拉斯锐化法是属于常用的一种微分锐化的方法。 微分法:梯度锐化法、Laplace算子、Sobel算子、Roberts算子、Prewitt算子。本次项目中我们将终点介绍拉普拉斯算子的方法。 3.2图像锐化的主要用途 (1)突出图像中的细节,增强被模糊了的细节 (2)图像识别中,分割前的边缘提取 (3)锐化处理恢复过度钝化、曝光不足的图像 (4)印刷中的细微层次强调,弥补扫描对图像的钝化 (5)超声探测成像,分辨率低,边缘模糊,通过锐化来改善 (6)尖端武器的目标识别、定位 3.3拉普拉斯算子理论及方法   拉普拉斯算子是一种在图像锐化处理中很重要的算法。拉普拉斯算子是与一个边缘方向无关的边缘点检测算子。它对孤立像素的响应要比对边缘或线的响应更强烈,因此使用该算子进行图像锐化之前需要对图像作平滑处理,这是一个刻画图像灰度的二阶商算子,它是点、线、边界提取算子,亦称为边界提取算子。通常图像和对他实施拉式算子后的结果组合后产生一个锐化图像。   拉普拉斯锐化法是常用的微分锐化法。拉普拉斯运算是偏导数运算的线性组合,而且是一种各向同(旋转不变)的线性运算。   对于一个连续的二元函数,其拉普拉斯算子定义为:   为了更适合于数字图像处理,将该方程表示为离散形式: 程序流程图: 锐化前后图片对比   四、心得体会 通过这次三级项目,小组成员都收获了很多,整个过程都需要学会自主学习,这是我们每个人都有了或多或少的收获。了解了数字图像处理的一些基本方法(直方图统计,取反,拉普拉斯算子),也提高了我们的动手实践能力。 在项目过程中难免会因观点不同而有一些摩擦,这时就需要我们以项目为重,以团队为重,这也使我们懂得了团队合作的重要性。 通过本次设计,我对程序的设计和研究有了更深刻的体会,让我了解到在编写程序时,进行模块化设计,以严谨的态度进行编程,避免出现低级错误,养成为程序添加注释和说明的好习惯,以便自己的修改和阅读者轻松的了解程序的各部分及整体的功能。当中也获得了程序运行成功后满满的喜悦,满满的成就感,同时也让我们对于亲身实践有了更清晰的认识。

  • 发表了主题帖: dsp2812的12864液晶显示源码

    源程序如下:   //########################################################################### // // FILE:    Example_2833xI2c_eeprom.c // // TITLE:   DSP2833x I2C EEPROM Example // // ASSUMPTIONS: // //    This program requires the DSP2833x header files. // //    This program requires an external I2C EEPROM connected to //    the I2C bus at address 0x50. // //    As supplied, this project is configured for "boot to SARAM" //    operation.  The 2833x Boot Mode table is shown below. //    For information on configuring the boot mode of an eZdsp, //    please refer to the documentation included with the eZdsp, // //       $Boot_Table: // //         GPIO87   GPIO86     GPIO85   GPIO84 //          XA15     XA14       XA13     XA12 //           PU       PU         PU       PU //        ========================================== //            1        1          1        1    Jump to Flash //            1        1          1        0    SCI-A boot //            1        1          0        1    SPI-A boot //            1        1          0        0    I2C-A boot //            1        0          1        1    eCAN-A boot //            1        0          1        0    McBSP-A boot //            1        0          0        1    Jump to XINTF x16 //            1        0          0        0    Jump to XINTF x32 //            0        1          1        1    Jump to OTP //            0        1          1        0    Parallel GPIO I/O boot //            0        1          0        1    Parallel XINTF boot //            0        1          0        0    Jump to SARAM            <- "boot to SARAM" //            0        0          1        1    Branch to check boot mode //            0        0          1        0    Boot to flash, bypass ADC cal //            0        0          0        1    Boot to SARAM, bypass ADC cal //            0        0          0        0    Boot to SCI-A, bypass ADC cal //                                              Boot_Table_End$ // // DESCRIPTION: // //    This program will write 1-14 words to EEPROM and read them back. //    The data written and the EEPROM address written to are contained //    in the message structure, I2cMsgOut1. The data read back will be //    contained in the message structure I2cMsgIn1. // //    This program will work with the on-board I2C EEPROM supplied on //    the F2833x eZdsp. // // //########################################################################### // Original Author: D.F. // // $TI Release: 2833x/2823x Header Files and Peripheral Examples V133 $ // $Release Date: June 8, 2012 $ //###########################################################################     #include "DSP281x_Device.h" #include "DSP281x_Examples.h"   // Note: I2C Macros used in this example can be found in the // DSP2833x_I2C_defines.h file   // Prototype statements for functions found within this file.   extern void Lcd_12864_Test(void); extern void Init_Port(void); void main(void) {     // Step 1. Initialize System Control: // PLL, WatchDog, enable Peripheral Clocks // This example function is found in the DSP2833x_SysCtrl.c file.    InitSysCtrl();     // Step 2. Initalize GPIO: // This example function is found in the DSP2833x_Gpio.c file and // illustrates how to set the GPIO to it's default state. // InitGpio(); // Setup only the GP I/O only for I2C functionality   // Step 3. Clear all interrupts and initialize PIE vector table: // Disable CPU interrupts    DINT;   // Initialize PIE control registers to their default state. // The default state is all PIE interrupts disabled and flags // are cleared. // This function is found in the DSP2833x_PieCtrl.c file.    InitPieCtrl();   // Disable CPU interrupts and clear all CPU interrupt flags:    IER = 0x0000;    IFR = 0x0000;   // Initialize the PIE vector table with pointers to the shell Interrupt // Service Routines (ISR). // This will populate the entire table, even if the interrupt // is not used in this example.  This is useful for debug purposes. // The shell ISR routines are found in DSP2833x_DefaultIsr.c. // This function is found in DSP2833x_PieVect.c.    InitPieVectTable();   // Interrupts that are used in this example are re-mapped to // ISR functions found within this file.      Init_Port(); // Step 4. Initialize all the Device Peripherals: // This function is found in DSP2833x_InitPeripherals.c // InitPeripherals(); // Not required for this example   // Step 5. User specific code       // Enable interrupts required for this example     // Enable CPU INT8 which is connected to PIE group 8      EINT;   // Enable Global interrupt INTM      for(;;)    {                 Lcd_12864_Test();    }   // end of for(;;) //#endif }   // end of main             //=========================================================================== // No more. //===========================================================================

  • 发表了主题帖: 一种基于Matlab的DSP调试及直接代码生成方法

         Matlab作为一种有效的信号处理工具,已经渗透到DSP的设计当中。开发者在将一个新的数字信号处理算法应用于实际前,一般是先用Matlab进行模拟验证,当模拟结果满意时再把算法修改成C或DSP汇编语言通过CCS在目标DSP上实现,并比较实际应用与模拟的结果以发现误差,如此反复进行。在较新版本的Matlab(6.0以上)中提供了Matlab与DSP的统一集成环境后,众多学者对Matlab环境下的DSP调试进行了研究。文献[2-4]从CCSLink的角度出发,对Matlab环境下的DSP调试进行了原理及思路上的阐述,但均未涉及到直接代码生成。本文在介绍CCSLink的连接对象、嵌入式对象和RTDX对象的基础上,详细阐述Simulink环境下的直接代码生成。   1 CCSLink及ETTIC2000概述   Matlab具有强大的分析、计算和可视化功能,但处理速度慢;DSP具有快速的信号处理能力,但是其CCS的编译环境中数据可编辑和分析能力不如Matlab;而MathWorks公司和TI公司联合开发的Matlab Linkfor CCS Development Tools(CCSLink)和EmbeddedTarget for the TI TMS320C2000 DSP Platform(ETTIC2000),CCSLink提供了Matlab和CCS的接口,能把Matlab和TI CCS及目标DSP连接起来。利用此工具可以像操作Matlab变量一样来操作TI DSP的存储器或寄存器。CCSLink支持CCS能够识别的任何目标板(C200,C5000,C600),此工具用于DSP程序的调试过程。而CCSLink与ETTIC2000的配合使用,可直接由Matlab的Simulink模型生成TIC2000DSP的可执行代码,能在集成、统一的Matlab环境下完成DSP的整个开发过程。   2 CCSLink环境下的DSP调试   CCSLink向用户提供了3个组件内容,如图1所示。     2.1 CCSLink的接口对象   2.1.1 CCS IDE的连接对象   该对象支持TI的C2000/5000/6000系列DSP,利用此对象可创建CCS IDE和Matlab的连接。用户可以编写用于DSP程序的Matlab语言批处理脚本,从Matlab的命令窗中直接运行CCS IDE中的应用程序,向硬件DSP的存储器或寄存器发送或取出数据,检查DSP的状态,停止或启动程序在DSP中的运行。   2.1.2 与RTDX的连接对象   该对象提供Matlab和硬件DSP之间的实时通信通道。它允许用户在主机和目标板之间进行实时的数据交换而不用考虑目标程序的运行。RTDX连接对象实际上是CCS连接对象的一个子类,在创建CCS连接对象的同时创建RTDX连接对象,它们不能分别创建。   2.1.3 嵌入式对象   在Matlab环境中创建一个可以代表嵌入在目标C程序中的变量的对象。利用嵌入式对象可直接访问嵌入在目标DSP的存储器和寄存器中的变量,即把目标C程序中的变量作为Matlab的一个变量来对待,并把编辑后的信息反返回到DSP程序中。所有这些操作均在Matlab环境下完成。   2.2 CCS IDE连接对象应用   CCS IDE连接对象提供Matlab与CCS IDE和目标DSP的连接,利用此连接可以在Matlab环境中控制和操作DSP中的应用程序;利用Matlab中强大的计算、分析和可视化工具来分析和对比目标程序运行过程中的结果;而嵌入式对象则提供Matlab对DSP内存中的变量进行实时访问和控制,这样大大缩短嵌入式应用程序的开发调试周期。本文以运行具体程序说明调试过程。源程序PWM.pjt保存在Matlab根目录下的project文件下。     从上述程序可知,在Matlab环境下可以完成对CCS工程文件的调入、编译,生成可执行文件并将其加载到DSP目标板。并且可以通过相应的连接对象和嵌入式对象操作函数,实现在DSP硬件不停止执行程序的情况下对DSP的C语言程序中数据结构变量的读写修改。   3 ETTIC2000环境下的直接代码生成   由第2节中可知,CCSLink为TI DSP实时应用开发的调试和测试阶段提供了强大的支持,而ETTIC2000则为TI C2000 DSP实时应用开发的整个过程(概念设计、算法仿真、源代码编写、目标代码生成、调试和测试)都提供了支持。利用ETTIC2000能够从Sireulink模型自动生成TI(22000 DSP的可执行代码,并且为TI LF2407 EVM目标板上的I/O设备提供驱动代码,使得MINULINK模型可以直接在LF2407EVM板上进行实时测试,从而在Simulink统一环境下就可以实现整个硬件在线仿真。   3.1 ETTIC2000应用开发过程   应用ETTIC2000开发实时DSP处理的过翟如下:   (1)概念构思和DSP处理算法设计;   (2)在Simulink环境下,利用DSP BLOCKSET,FIXED-POINT BLOCKSET,C2000 DSPLIB和Simulink等库中的模块构建算法模型,并在Simulink环境下进行仿真;   (3)如果Simulink仿真效果满意,就可以在模型中加入需要的LF2407 EVM目标板上的I/O模块;   (4)设置REAL-TIME WORKSHOP中的编译链接(BUILD)选项;   (5)利用CCS中的调试工具、CCSLink或RTDX来调试目标DSP中的程序;   REAL-TIME WORKSHOP能够从Simulink模型中自动产生C代码并且插入ADC和DAC模块指定的I/O设备驱动程序。再通过REAL-TIME WORKSHOP面板上的BUILD按钮,REAL-TIME WORKSHOP会自动产生实时可执行代码。   3.2 建立Simulink模型   由前述连接对象可知,系统已经正确安装了TIC2000系列DSP目标板。在Matlab命令窗口输入:C2000LIB,打开TIC2000的Simulink模块库,其模型库组成如图2所示。本系统采用2407目标板,因此只用到C2000 Target Preferences和C2400 DSP ChipSupport等模块。本文以脉宽调制中A/D采样控制为例,其建立的Simulink模型如图3所示。       3.3 REAL-TIME WORKSHOP选项设置   建立好Simulink模型后,设置其属性,生成CCS可执行的工程文件。   在Simulink模型窗口选择Simulation下拉菜单中选择Configuration Parameters,弹出如图4所示对话框。在属性对话框中单击Real-Time Workshop选项卡,在Category栏中选中Target configuration修改System target file和Template make file文件名。其他选择默认值,单击Generate Code,就可以将Simulink模型自动生成CCS IDE的工程文件,并自动调入CCSIDE中,则该工程文件就可以在CCS IDE中编译下载运行。其生成的工程文件在CCS IDE环境下的载人情况如图5所示。   在直接代码生成时,Matlab命令窗口返回信息如下:     至此,代码生成并在CCS IDE中编译完毕。   4 结 语   本文基于Matlab环境对DSP的实时调试及直接代码生成过程做了详细的阐述,并结合实例给予演示。实验证明,应用Matlab对DSP进行实时调试和代码生成,有效地改变了传统的设计方法。Matlab的易于操作性有助于在设计早期发现错误并进行实时更改。而CCSLINK与ETTIC2000的结合,使得在集成、统一的Matlab环境下完成DSP开发的整个过程。

  • 发表了主题帖: 用于停车辅助的汽车超声波传感模块参考设计

    设计利用三个高度集成的片上系统 (SoC) 超声波传感器驱动器为停车辅助系统 (PAS) 提供硬件架构。这些超声波传感器驱动器带有集成信号调节器,配备高级数字信号处理器 (DSP) 内核。使用这些集成功能,可实现对 25cm 至 2.5m 范围内物体的检测。距离数据将通过一个单线接口 (OWI) 发送至本地电子控制单元 (ECU),并在此进行聚合与处理。此设计指南中介绍的传感器初始化、物体检测算法以及软件为开发汽车或防撞 PAS 的工程师提供了一个基础的框架。 特性 整合了三个 PGA460-Q1 器件,可检测 25cm 至 2.5m 范围内的物体 提供系统诊断信息 包含电平 USART 和 TCI 接口选项的电路 解决方案尺寸(直径)为 22mm 原理图

  • 2019-07-10
  • 发表了主题帖: MSP430™ FRAM微控制器实现能量采集

    对于很多人来说,第一次接触能量采集可能是在早期使用太阳能便携式计算器的时候,虽然如今这种类型的计算器已不再是主流,但是它所使用的技术和理念仍然应用于我们的日常生活中。目前,我们在许多的应用中都能看到能量采集的身影,例如传感器节点、风力涡轮机和室内供能应用等。不过,即使对于这项技术的讨论较之前已经有了很大的发展,当涉及到能量采集时,开发人员仍然面临着与数十年前一样的挑战。 为了在不带来负面影响的情况下产生出所需的能量,通常需要一块物理尺寸很大的太阳能板和一套巨大的热能采集装置,或者是通过设备发出不同频率范围的振动来获得能量,而一切都是由所使用的系统决定。因此,在很多情况下,这个系统的成本甚至会超过取代传统电源所带来的优势。当然,如果由于某些因素必须忽略这些限制的话,也会有例外的情况。例如,在电力线无法到达的偏远地区,风能或太阳能采集可以为电池供电系统提供一个可行的替代能源,尽管这种方法的初始成本会比较高。 下面让我们来看一看目前能量采集解决方案所面临的几个重大挑战。 图1—经简化的通用框图 首先,通过上方的简化通用框图可以看到,这个系统由输入和输出组成,其中包括传感器、按钮、LED、显示屏、发声器以及目前越来越普遍的无线连通性。这个典型物联网(IoT)架构的边缘节点可以通过Wi-Fi®、Bluetooth®、NFC / RFID或是其它专有接口进行通信。这些无线连接所需的电能低至数uA,而最高也只需要几十或几百mA,在数十毫秒的时间内即可为相关的RF IC和子系统供电。   图2—常见RF电能使用量图表         在   很多应用中,设计人员希望将传感器或其它数据存储在非易失性存储器中,因为即使在电力中断时,也可以恢复采集到的数据。所以,诸如EEPROM或FLASH等现存的通用存储器技术在这些能量受限的情况下并不总是最佳选择。 幸运的是,技术的发展方向正让能量采集系统变得可行。其中一项技术集成就是TI的铁电随机访问存储器或FRAM微控制器(MCU)系列。FRAM技术将SRAM存储器的很多优势结合在一起,而同时又具有FLASH存储器的非易失性。一个关键优势就是超低功耗非易失性FRAM的写入,与FLASH不同的是,这些写入无需预擦除周期,从而节省了时间和电能。另外一个优势就是FRAM单元的固有低压写入,传统闪存或EEPROM技术需要一个集成电荷泵来完成预擦除周期,而这通常需要5-10mA的电流,运行时间则需要数百毫秒,在需要频繁非易失性写入的应用中,这个额外的能耗会消耗可观的电池电量或采集得来的能量。        购买一次性电池的开销虽然不是很高,不过它们所造成的影响极其深远。全球每年新电池的销售量在数十亿节,而其中只有一小部分是可回收的,这就产生了大量的填埋垃圾。一次性电池的另外一个缺点就是,无论是电池本身或是整个系统,都需要在某些情况下的某个时刻进行替换,而这就产生了潜在的挑战。试想一下,如果电池被安装在部署于海洋底部或山顶的系统中,我们应该如何替换呢?事实上,电池更换的开销可能非常巨大。虽然可充电电池能够减少替换电池的数量,不过,就可充电电池本身而言,它们不一定会能够解决电池更换所带来的所有挑战。当我们使用能量采集对可充电电池进行充电时,这些电池的确能够带来利益。       目前,太阳能、热能、运动能(振动或其它动力学效应)和RF等能源已经被广泛接受。其它能源也正处于开发过程中,例如有可能从人类血液中发生的电化学反应采集能量,或者是从植物和树木内部的此类反应中采集能量。       在理想情况下,这些能源将是绵延不断的,不过实际情况并非如此。以太阳能采集装置为例,飘动的云彩也许会遮住太阳光,而室内设施的灯光也不可能永远开启。基于振动的采集装置通常在一个共振频率附近运行,从而限制它们的运行范围,而热能采集装置会在无法保持合适的温差时损失效率或完全停止运行。归根结底,我们不能依赖这个能源保持连续的7x24小时运行,所以我们需要冗余结构。在某些情况下,这个结构有可能是第二采集能源或是一节可充电电池。即使是太阳能计算器都包含一块CR2025电池,以便在办公室光线较暗时作为太阳能的备用能源。 处理电力损耗成为一名能量采集节点设计人员的主要考虑因素。现代微控制器在通电时通过启动顺序运行,这往往需要几毫秒并且会消耗宝贵的电能。如果电力中断,大多数微控制器需要重启,并且在每次电力恢复时运行这个启动代码。 FRAM存储器本身是Compute Through Power Loss(CTPL)这款高度创新型软件实用工具的使能器件。我们甚至可以将CTPL看成是一种非易失性中断处理例程,在这个例程中,当检测到电力损耗时(通常使用一个比较器或ADC输入),关键参数和微控制器状态就被保存至非易失性存储器(NVM)。在出现电力中断的情况下,FRAM所具有的优势将显露无疑,因为设计人员可以直接从中断的位置继续工作而不是从头开始。 凭借128KB FRAM MSP430™ 微控制器的低成本MSP430FR6989 MCU Launchpad™ 开发套件能够进行简单演示。 通过将FRAM技术、Compute Through Power Loss代码和Energy Harvesting BoosterPack™ 插入式模块组合在一起,我们为很多能量采集传感器节点打下了良好基础。bq25570所提供的电源备妥信号可以作为Compute Through Power Loss激活的触发信号,从而在电力中断后节省了时间和宝贵的电能。

  • 2019-07-09
  • 发表了主题帖: ti dsp(tms320VC5502)+isp1581 usb2.0高速数据采集方案

     TI C5000 DSP具有低功耗、高性能、成本低的特点,其中TMS320VC5502高达300M时钟,可外扩2MB的sdram,接口丰富,16K指令cache,64KB片内DRAM,另内部带有6个通道的DMA,这些特性使得它非常适合用来做高速数据采集系统。     ISP1581是philips公司生产的USB2.0芯片,支持USB2.0高速通讯,内部自带FIFO,支持DMA,被广泛用于mp3、usb mess storage、ethernet、打印机、扫描仪等设备。     下面的我使用的TMS5502+ISP1581开发板:

  • 回复了主题帖: 基于MSP430F413水果电池供电的低功耗时钟

    厉害

  • 发表了主题帖: CCS技巧DSP/BIOS烧写 去掉提示prompt

            随着数字信号处理理论和计算机的不断发展,现代工业生产和科学技术研究都需要借助于数字处理方法。进行数字处理的先决条件是将所研究的对象进行数字化,因此数据采集与处理技术日益得到重视。在图像处理、瞬态信号检测、软件无线电等一些领域,更是要求高速度、高精度、高实时性的数据采集与处理技术。现在的高速数据采集处理卡一般采用高性能数字信号处理器(DSP)和高速总线技术的框架结构。DSP用于完成计算量巨大的实时处理算法,高速总线技术则完成处理结果或者采样数据的快速传输。DSP主要采用TI或者ADI公司的产品,高速总线可以采用ISA、PCI、USB等总线技术。目前,使用比较广泛的是PCI总线,虽然其有很多优点,但是存在如下严重缺陷;易受机箱内环境的影响,受计算机插槽数量的地址、中断资源的限制而不可能挂接很多设备等。USB总线由于具有安装方便、高带这、易扩展等优点,其中USB2.0标准有着高达4800bps的传输速率,已经逐渐成为计算机接口的主流。本文介绍一个采用USB2.0接口和高性能DSP的高速数据采集处理系统,主要是为光纤通信中密集波分复用系统的波长检测与调整所设计的,也可以应用于像图像处理、雷达信号处理等相关领域。 1 高速数据采集处理系统原理及器件选用 整个高速数据采集处理系统的硬件构成为:高速ADC、高速大容量数据缓冲、高性能DSP和USB2.0接口。系统的原理框图如图1所示。 高性能DSP采用TI公司的TMS320C6000系列定点DSP中的TMS320C6203B;高速ADC采用TI公司的ADS5422,14位采样,最高采样频率为62MHz;PC机接口采用USB2.0,理论最大数据传输速率为480Mbps,器件选用EZ-USB FX2系列中的CY7C68013;数据缓冲采用IDT公司的高速大容量FIFO器件IDT72V2113;程序存储在Flash存储器中,器件选用SST291E010。下面逐一介绍各个器件的主要特性。

  • 发表了主题帖: CCS安装仿真器时,提示出现需要bh2usb.sys文件解决办法

    CCS安装仿真器时,提示出现需要bh2usb.sys文件解决办法(原因是CCS3.3 不支持BlackHawk 的USB驱动) 1。删除 inf文件和两个SYS文件 a、第一步的具体操作方法: inf文件在 c:\windows\inf里。名字已经变为 OEM*.inf。有很多OEM开头的文件,具体是哪一个要一个个打开看。其 中最后几项包含厂家型号等信息,里面有blackhawk字样就是要删除的;  (如OEM17.inf与OEM17.PNF都要删去) b、sys文件在windows\syste32\driver里bh开头的。(如:bh2usb.sys 等两个文件都删去) ****************************************************** 2。在"设备管理器"里卸载一次后,插上仿真器后再卸一次。直到没有BLACKHAWK为止,并确定已经删除干净。 3、第三次插上时就找新设备,就可以安装新的驱动了。 4、正确安装后,出现Texas Instruments Emulators/XDS510-USB2.0 

  • 2019-07-08
  • 发表了主题帖: CCSv5中如何将图像导入DDR中

    首先,通过matlab将bmp格式的图像转换成dat格式 下例子以将连续四帧图像转换为dat格式为例: clc;   close all;   clear all;   %说明:生成DSP实验所用的图像数据Dat文件   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   for i = 1:4     str = strcat('D:\_Matlab_WorkSpace\', int2str(i), '.bmp');     I = imread(str); %I = imread('D:\_Matlab_WorkSpace\000001.bmp');%打开图像,这里改成自己的图像名及路径   %将图像缩小一点,不然数据量太大   %I = imresize(I,[128,128],'bicubic');%<span style="color:#ff0000;">缩小成128*128、二维FFT时需要图像为2的n次方</span>       figure,imshow(I);%显示图像       [N, M, dim] = size(I);%获取图像的高与宽       if(dim == 3)           I = rgb2gray(I);%如果打开的是彩色图像,则转换成灰度图像       end       fil = strcat('D:\_Matlab_WorkSpace\', int2str(i), '.dat');     fid = fopen(fil,'w');%保存.dat图像数据文件       fprintf(fid,'%d %d %s %d %d\n',1651,2,'8cc0', 0, i*N*M);%写入二进制文件的第一行       %将图片数据写入Dat文件中       for n = 1:N           for m = 1:M               fprintf(fid,'%d\n',I(n,m));           end       end   end fclose(fid);   disp('Run OK')  将四个文件合并成一个即可。 其次,将图像导入DDR中,需要知道DDR的地址。查询cmd文件知道其起始地址为0x80000000 Build->Debug程序之后可通过Tools->Load Memory来加载图像信息。 加载成功后,可以通过Memory Browser输入起始地址来查看数据值。亦可通过Tools->Image Analyzer来显示图像。 Properties输入的参数如下图: 然后Refresh之后即可显示图像了。 最后,将DDR的起始地址0x80000000赋给一个变量,就可以通过这个变量对图像进行操作了。  

  • 2019-07-06
  • 发表了主题帖: 关于低功耗节点搭建长距离网络问题

         利用Sub-1 GHz波段进行通信能够在系统总成本和复杂度更低的情况下实现最远的范围。同时,Sub-1 GHz更加适合用于例如办公室、楼宇和家庭等室内环境,并且拥有最低的功耗。      但是,如果要释放物联网(IoT)的全部潜能,仅仅创建一条连接节点和互联网的链路是远远不够的。      用于诊断和自动化的云端管理系统需要仅仅有条的控制大量传感器。而工厂、楼宇和零售业的中央服务器必须实现大规模的程序管理和自动化,以减少维护费用。       在家中的消费者需要一个类似于安防系统告警面板的中央枢纽,以保证各种低功耗传感器和节点的数据通信流保持协调一致,同时随时可以连接至互联网。       无线连接作为IoT的一种解决方案,能够满足系统部署对于大量(从数十个到数百个)“鲜活”节点的需求。这也意味着定义技术的目的在于识别不同场景中节点所传输的数据类型。        那么,我们如何才能充分利用Sub-1 GHz作为无线通信链路时带来的巨大优势,并实现这一潜能,同时将其改造成一个连通性“系统”解决方案呢? 我们需要提供一个网络基础设施,以确保能够轻松搭建和维护大量节点,并保证通信安全。所有的节点必须搜索可连接的网络,并且利用此网络进行通信。它们的角色和服务必须随着时间的迁移而扩展,同时保持链路的维护。 我们必须保证节点在传输和接收数据时的可靠通性,并且充分利用传输空间,以避免数据通信阻塞和网络失效。这最终会造成不好的用户体验或影响节点自身的电池使用寿命。 在各种各样的场景下,我们需要能够服务不同类型的流量规格。例如在像诊断系统等普通传感器网络中,数据会被报告给一个中央枢纽。而另一方面,在诸如零售网络中,大部分数据将会被发送至外设,比如零售服务器向终端发送更新后的定价信息。 在满足以上条件的同时还必须保持低功耗运行,当节点不处于数据通信状态时进入睡眠模式。不过,寻求最佳功耗还意味着尽可能降低传输和接收的“启动”时间,并且在激活的模式下使用最少的电量。 最后,我们必须能够通过IP与互联网连接实现Sub-1 GHz网络内的本地数据通信。        现在,设计人员在试图满足所有上述要求时所面临的设计挑战均可以由全新的TI 15.4-Stack软件解决方案解决。TI所开发的这款软件为IoT提供了真正的应用型Sub-1 GHz连接解决方案。   图1:全新TI 15.4 Stack是一款标准的Sub-1 GHz无线网络解决方案          TI 15.4-Stack是一款在SimpleLink™ Sub-1 Ghz CC1310无线微控制器(MCU)上运行的软件开发套件(SDK)。基于久经验证的IEEE 802.15.4标准,其能够执行Sub-1 GHz波段在北美和欧洲运行技术规格的‘g’修订版(分别由FCC和ETSI制定)。 IEEE 802.15.4标准被用作目前市面上很多常见网络互连标准的数据链路层,例如6LoWPAN、Wi-SUN、ZigBee®、Thread和WHART等。由于诸如空中调停(通过CSMA-CA实现)、接受、重传以及内置AES安全性等特性,其保障了无线基础的稳定。  为了提升链路的鲁棒性和可靠性,TI开发出一个针对U.S. FCC波段的跳频机制。这个机制依赖于Wi-Sun FAN标准,而TI对其进行了低功耗运行的优化。由于链路的鲁棒性能够提供更低的数据延迟和低功耗节能(避免了重传),应用可以直接从中受益。 TI 15.4 Stack软件可被配置为异步或同步运行模式,一方面用于电池供电类传感器的运行,另一方面还能支持具有低功耗节点的接收协同下行链路流量运行,从而满足了不同应用类型的需求。 此外,TI 15.4 Stack软件基于TI-RTOS的基础,并配备了整套针对传感器和采集器设备的应用示例。这两个应用都拥有一个基于802.15.4标准运行的逻辑链路控制器模块,包含网络和器件管理程序。 这为使用软件的用户提供了一个完整的参考解决方案,能够解决构建可托管低功耗网络时所遇到的设计挑战。TI 15.4 Stack软件能够基于选定的配置,支持从10s至100s的器件部署。 TI 15.4 Stack软件还包括一个基于Linux的网关软件,能够执行本地网络控制器和采集器应用。通过网关软件,由Sub-1 GHz外设节点输入的数据能够在网络浏览器界面中进行监控和激活。 这款全新的软件基于TI低功耗开发平台设计,包括:TI SimpleLink CC1310 LaunchPad™开发套件和Sitara™ AM335x处理器BeagleBone Black开发板。凭借BoosterPack™ 的开发套件生态系统和插入式模块以及TI-RTOS框架的支持,用户能够轻松实现应用的扩展。         使用窄频带调制能够在外部晶体成本有限的情况下获得最佳的灵敏性和抗扰度,TI 15.4 Stack软件释放了Sub-1 GHz无线在IoT中的所有优势。        通过提供一个用于低功耗托管网络的完全参考系统解决方案,用户可以将Sub-1 GHz无线功能性轻松集成到他们现有的网络中。       现在,创建包含大量低功率节点、覆盖整幢建筑、整个房屋或停车场区域的网络应用已经不仅仅是一个无线技术专家的任务。

  • 发表了主题帖: CC1310 两线 Serial Bootloader 方案

    两线bootloader工程设置 CC1310 三线bootloader如下图左,除了串口的两根连线外,还需要一个专门的I/O进行启动模式的控制。针对很多客户产品只有一个对外的串口接口,提出了下图右的两线Bootloader方式,这个方式将BOOT_IO 与CC1310的UART RX复合使用。 如下图BOOTLOADER的串口配置所示,UART和SPI的口是固定的I/O, 不能设置其他的I/O。CC1310 Launchpad 使用的是7*7 RGZ的封装,下面我们需要设置BOOT_IO BOOT_IO的设置在ccfg.c文件中,需要配置两个宏,一个是有效触发电平, 一个是DIO的编号。我们将有效触发电平设置成高有效,BOOT_IO设置为DIO3。修改如下代码。同时,为了使能Bootloader功能,需要定义下面两个宏SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE和SET_CCFG_BL_CONFIG_BL_ENABLE为0xC5 #define SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE         0xC5 #define SET_CCFG_BL_CONFIG_BL_LEVEL 0x0 // Active low to open boot loader backdoor #define SET_CCFG_BL_CONFIG_BL_PIN_NUMBER 0x02 // DIO number for boot loader backdoor #define SET_CCFG_BL_CONFIG_BL_ENABLE                 0xC5 编译,烧写固件。 编译生成目标升级Bin固件 这里以TI的CC1310 SDK的pwmled_CC1310_LAUNCHXL_tirtos_ccs例程,编译需要升级的固件。有两个地方需要设置,一个是设置ARM Hex Utility中的memory width和rom width为8,一个是Build, Step中的post build添加,${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin.bat ${BuildArtifactFileName} ${BuildArtifactFileBaseName}.bin ${CG_TOOL_ROOT}/bin/armofd.exe ${CG_TOOL_ROOT}/bin/armhex.exe ${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin.exe 设置生成bin文件。 如下图。   编译工程,得到pwmled_CC1310_LAUNCHXL_tirtos_ccs.bin 通过Flash Programmer2对目标芯片完成两线串口Bootloader烧写 应用文档SWRA466A中,对应的提供了一个命令行小程序sblAppEx,用于固件升级,因为程序编译较早,有些版本运行会出错。而很多用户不知道的,Flash Programmer2 具有通过串口进行固件烧写的功能。下面, 具体介绍用Flash Programmer2进行串口固件升级的具体操作如下: 1. 按照图X所示,连接UART口和BOOT IO口, BOOT IO (即DIO2) 接低点平, 复位系统. 由于我们设置的是低点平进入Bootloader状态,复位后,芯片进入ROM Bootloader模式 2. 在Flash Programmer2 的左上角 Connected devices中,选择XDS110 Class Application, Unknown (这是CC1310 Launchpad自带的UART口,如果是你自己的串口,也可以在这里看到) 3. 选择好Unknown后,在左下脚的Select Target Device… 下拉菜单中选择对应型号CC1310F128 4. 选择好芯片好. 右键, 选择Connect, 与目标芯片建立UART通信, 如下图 5. 选择需要升级的固件BIN文件, 这里选取之前步骤生成的pwmled_CC1310_LAUNCHXL_tirtos_ccs.bin文件 6. 升级成功后,可以从Flash Programmer最下方的状态窗口看到更新 7. Dd 至此,我们就实现了两线Bootloader

最近访客

< 1/3 >

统计信息

已有81人来访过

  • 芯币:1503
  • 好友:1
  • 主题:504
  • 回复:27
  • 课时:--
  • 资源:--

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言