×

使用数字隔离器简化医疗和工业应用中的USB隔离资料下载

消耗积分:3 | 格式:pdf | 大小:624.51KB | 2021-04-26

王秀兰

分享资料个

作者:Mark Cantrell 目前在办公室和家庭中使用的标准信息处理设备—个人电脑 (PC),使用通用串行总线(U S B) 与大多数外设进行通讯。标准化、低成本 及软件和开发工具的支持已使个人电脑成为医疗和工业应用很具吸引力的主处理器平台,但这些增长中的市场对安全性和可靠性要求 (特别是在电气隔离方面)与一直以来推动个人电脑发展的办公室环境有很大不同。 早期的个人电脑以串行和并行端口作为与外部世界连接的标准接口。这些标准是从最早的大型计算机继承而来的。另一个可用的通讯标准R S-232 接口,虽然速度慢,但因为可简单地实现所需要的鲁棒隔离,很适合医疗和工业环境。由于得到广泛使用并有良好的支持,人们容忍了其速度低和点对点的缺点。 USB接口已取代R S-232,成为个人电脑及其外设的标准端口,其特性几乎在所有方面都远远优于较老的串行端口。然而,对于要求隔离 的医疗和工业应用,由于实现隔离的难度大且成本高,USB一直主要用作诊断端口和临时连接。 本文讨论了对USB实现隔离的各种方法。值得特别介绍的是,ADI公司现提供了一个新的可选方案— ADuM41601 USB隔离器。这一突破性 产品可简单廉价地实现外设隔离(特别是D 和D-线的隔离),提高了USB在医疗和工业应用中的使用价值。 关于通用串行总线 USB是个人电脑的首选串行接口。该接口得到所有常用的商业操作系统的支持,且允许硬件和驱动器热插拔。一台主机可以集中星型方式连接多达127 个设备。许多数据传输模式可处理存储设备的大批量数据传输、流媒体的同步传输以及时间关键型数据的中断驱动型传输(如鼠标移动)等各类传输。 USB以三种数据传输速率运行:低速 (1.5Mbps)、全速 (12Mbps) 和高速(480Mbps)。该规范创建后强化了 消费应用,这些应用要求连接必须简单且具有鲁棒性,由控制器和物理层信令来解决复杂性的问题。 USB物理层只包含4条线:两条向外设提供5V电源和地,另外两条(D 和D-)构成可传 递差分数据的双绞线对(图1)。这些线也可传递 单端数据以及用无源电阻实现的空闲状态。当设备 连接到总线上时,无源电阻结构中的电流对传输速度进行协商,并建立无驱动的空 闲状态。数据被组织成数据帧或数据包,每帧可以包含时钟同步位、数据类型标识符、设备地址、数据有效载荷及包尾序列。 图1. USB的标准组成。 串行接口引擎(SIE) 在电缆的两端对这个复杂的数据结构进行控制,这个专用控制器(或作为更大控制器的一部分)实现USB协议,通常内置 USB收发器硬件。当某个外设首次连接到电缆上时,SIE在枚举,2期间向宿主计算机提供外设的配置信息和功率要求。在运行期间,SIE 把所有数据按照要求的传输类型格式化,并提供错误检查和自动故障处理。SIE处理总线上的所有控制流,并按需要使能和禁用线驱动器和接收器。主机 启动所有的处理业务,然后按明确规定的数据序列在主机和外设之间交换数据,包括数据损坏和出现其它故障的情况。SIE可以内建在微处理器中,因此它可能只有 D 和D-线与外设相连。实现这个总线的隔离面临几个挑战: * 隔离器几乎总是单向器件,而D 和D-线是双向的。 * SIE不提供确定数据传输方向的外部方式。 * 隔离器必须与无源电阻的上拉和下拉功能兼容,即与隔离阻障两侧的威廉希尔官方网站 匹配。 * 隔离USB的典型方法主要是设法回避上述挑战。 第一种方法: 使USB接口与需要隔离的设备完全分离(图2)。许多设备可把其它通用的串行总线与USB连接;图2中显示了R S-232与USB 的连接接口。SIE提供普通的串行接口功能;隔离是在低速串行线中实现的。但这种方法并不能利用USB的优势,所实现的是一个可热 插拔的串行端口。接口芯片可通过改变固件来实现定制,以识别外设,从而允许创建定制的驱动程序;但每个外设可能都需要一个定 制的适配器。除非该适配器是永久连在这个外设上,否则这将是维修人员的噩梦。此外,接口的速度将被限制在标准R S-232的速度,甚 至远低于低速USB的吞吐量。 图2.通过RS-232隔离。 第二种方法: 使用带有易隔离接口的独立SIE(图3)。市场上有几种产品(如SPI)使用快速单向接口把SIE连接到微处理器。数字隔离器 (如 ADuM1401C 四通道数字隔离器)可对SPI 总线实现完全隔离。由于SIE包含可通过SPI总线填充的缓冲存储器,SPI的运行速度在很大程度上可不依赖于USB的速度。SIE将与USB主机协商其可能的最高 连接速度,并以协商得出的总线速度分发数据,直到把缓冲中的数据传递完。此时,SIE会通知主机如果有更多的数据需要传送则重试,并留出时间使 SPI接口可为下一个传输循环重新填充缓存。虽然非常有效,这种方案通常要求修改外设驱动程序,并忽视内置在外设的微处理器中的 USB威廉希尔官方网站 。该方案在元件和威廉希尔官方网站 板尺寸方面的成本较高。 图3. 通过SPI接口隔离SIE。 第三种方法: 如果微处理器的SIE使用外部收发器,则可以对微处理器和收发器之间的数据和控制线进行隔离(图4)。但是,这种方式要求在SIE 和收发器之间有9条单向数据线。在高速数字隔离器中,这将带来极大的成本问题。此外,现有的速度最快的数字隔离器工作在约150M b p s,虽然远高于低速和全速 USB,但不能处理高速数据,限制了USB接口的速度范围。该方案与为微处理器SIE提供的USB驱动器完全 兼容,可降低开发成本,但需使用多个隔离通道致使实现成本高昂。此类收发器接口将被集成度要求日益提高的市场所淘汰。 图4. 隔离的外部USB收发器 第四种方法:直接在D 和D-线线中插入隔离(图5)。这种方式允许在现有的USB应用中添加D /D-隔离,而无需重写驱动程序或增加冗余 SIE,同其它方法相比,这是一个很大的优点。但是,D 和D-线的隔离较为复杂,因为隔离器件必须能够像SIE那样处理控制流,允许 在隔离屏障两边使用上拉电阻,并确定传输速度。另外,其运行不应要求额外的设备驱动程序相关的开销。 图5. 隔离D /D-线. 新型芯片级器件ADuM4160 USB隔离器解决了这些挑战性难题(图6),它支持低速和全速USB的D 和D-线直接隔离. 图6. ADuM4160的框图。 ADI公司的 iCoupler® 技术3 特别适合于构建USB隔离器。在开发USB隔离器时所面临的主要挑战是正确确定数据传输的方向,以及何时禁 用驱动器以让总线处在空闲状态。USB数据的面向数据包特性使我们可以使用一种简单的方法来确定数据方向,免去了整个SIE的开销。 当总线空闲时,上拉和下拉电阻使USB保持在空闲状态,缓冲器不再驱动总线 TA D u M4160监视总线的上游和下游部分,等待来自任何方向的跃迁信号。当检测到跃迁信号时,则对信号进行编码并传过隔离阻障。这些数据被解码之后, A D u M4160使能输出驱动器在电缆的另一段上进行传输。从第一次传送开始,由于数据流的方向已得到确认,A D u M4160 将禁用反向隔离通道。只要继续收到数据,隔离器就沿相同的方向继续传输数据。当USB数据包结束时,A D u M4160传输特殊 的数据—包尾序列。包尾序列包含非差分信号,而非差分信号不应包含在任何数据结构中。A D u M4160可以区分有效数据和包尾标识。包尾标识通知总线返回 空闲状态。然后,A D u M4160禁用输出驱动器,并开始监视上游和下游输入的下一次跃迁,该信号将决定下一次数据传输的方向。 此外,当发生总线错误时,看门狗定时器将使A D u M4160返回空闲状态。A D u M4160使用了基于跃迁的隔离方案,基于跃迁的隔离是 iCoupler technology技术的核心能力之一. 隔离器还必须支持上拉和下拉电阻。隔离器的每侧支持一个独立的USB总线段,在空闲状态连接所有的偏置电阻。当在总线上有某个 设备需要进入初始化序列(称为枚举)时,上拉电阻 发出信号。知道外设的工作速度以及何时应连接上拉电阻,使枚举过程以受控的方 式启动。有几个因素影响上游上拉电阻的状态。上游和下游电源电压可能有多种组合,隔离器的设计保证对所有给定的电源组合给出可预测的操作。有时,如外设需在开始 USB枚举之前完成自己的本地初始化的话,外设要求延迟启用上游的上拉电阻。ADuM4160在其下游侧提供了一个控制引脚以便由外设来决定何时开始枚举。 该器件还可以工作于5V或3.3V电源,因此,外设仅需一个电源。A D u M4160还具有良好的ESD保护能力,通常允许在连接器的D 和D- 引脚没有外部保护威廉希尔官方网站 的情况下热插拔。 ADuM4160可按以下三种方式之一使用:: 安装在外设中以隔离其上游端口。A D u M4160是以这个配置为基础应用设计的,该设计极大地简化了电源和控制配置(图7)。 可用来隔离集线器以及集线器所有的下游外设(图8)。 可用于隔离电缆(图9)。 下面的示例给出了ADuM4160在这些应用中的连接方法。 在 外设 应 用中(图 7 ),外设有自己的电源,几乎不需要从 USB 电缆获 得能量—只需约 10 毫瓦来驱动该隔离器的上游侧和上拉电阻。由于 外设以单一速度运行,该隔离器按期望的速度( 全速 或 低速 )设置以 硬连线方式与外设连接。如果外设端口具有 高速 性 能 ,那 么 ,它 在 枚 举期间发送高速的" chirp "信号。这通常会启动速度协商以实现高速 操 作 ,但 A D u M4160 会阻断" chirp "信号并自动迫使高速外设运行在 全速模式 。对不带电源的低功耗外设,可用隔离型 DC/DC 转换器(如 ADuM5000)给外设供电,而ADuM4160从USB电缆汲取能量。 图7. 隔离的外设端口。 在作为集线器隔离器使用时,ADuM4160把集线器作为外设来对待(图8)。A D u M4160设置为全速,其它部分与上面讨论的标准外设类似。在 A D u M4160的chirp功能干预下,集线器被迫以全速运行。即使ADuM4160以固定的速度运行,集线器芯片都可以连接到低速和全 速设备的各种组合。集线器向下游端口的隔离器提供能量,枚举可以以上电启动或延迟启动的方式进行。集线器要求提供的能量通常 高于上游电缆通过隔离型DC/DC转换器供电的能力。 图8. 隔离的集线器。 驱动隔离的USB 电缆(图9)需使用DC/DC转换器为下游端口和电缆供电。为了满足USB规范的要求,电缆的下游部分必须向外设的上拉威廉希尔官方网站 提供5V电源。可使用 ADuM5000等隔离型DC/DC转换器可以用于提供这个电源,另外,它还有足够的裕量为下游功率要求低的设备提供能量。图9显示了ADuM5000 isoPower® 器件.3 这个应用中, A D u M4160以硬连线连接的速度引脚有些不便。该电缆每次只能以一个USB速度运行,要切换速度模式须重新接线或通过简单 的开关以手动方式切换或采用更复杂的威廉希尔官方网站 ,这依赖于末端用户的需求。

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

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.obk20.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'使用数字隔离器简化医疗和工业应用中的USB隔离资料下载',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.obk20.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);