设备上需要临时添加一个24VDC的输出,原有的24VDC输出都是在PLC上,但PLC的输出点已经用完,要再添加一个IO模块倒是可以,但一来不经济,二来还要修改PLC程序,在下并不在行。设备的上位机是工控机,有一个并口,我知道并口输出的是TTL电平,电气工程师认为能够通过电路改造把TTL电平转换为24VDC的。小弟是编写上位机程序的,现在问题来了,怎么通过VB6编程控制并口输出TTL电平?

解决方案 »

  1.   

    可以使用WinIO.Dll或者inpout32.Dll来驱动计算机的IO口,并口属于IO口的范畴内,普通并口的地址是&H378~&H37A,&H378的Bit0~7,就是TTL电平输出。编程实现输出不难,我倒是担心并口的功率不足以驱动你的电路哦,呵呵。
      

  2.   

    TTL电平(5V)怎么可能转换为24VDC?
    PLC上的24V直接用呗,如果电流要求不是很大(PLC应该允许输出500ma)
      

  3.   

    谢谢你的回复
    就你的两个问题:
    1、TTL电平可以转换为24V,使用光电耦合器(TIL117)
    2、我的PLC上的已经没有输出点了,要再加一个模块的近千元,且还要修改PLC程序,而我不善此道。所以就想利用工控机上的并口来完成这个任务。
      

  4.   

    谢谢你的回复
    就你的两个问题:
    1、TTL电平可以转换为24V,使用光电耦合器(TIL117)
    2、我的PLC上的已经没有输出点了,要再加一个模块的近千元,且还要修改PLC程序,而我不善此道。所以就想利用工控机上的并口来完成这个任务。
      

  5.   

    谢谢你的回复
    就你的两个问题:
    1、TTL电平可以转换为24V,使用光电耦合器(TIL117)
    2、我的PLC上的已经没有输出点了,要再加一个模块的近千元,且还要修改PLC程序,而我不善此道。所以就想利用工控机上的并口来完成这个任务。
      

  6.   

    个人建议还是使用串口吧,不需要加载驱动,并且控制简单.你让你那个电路工程师在串口上的7脚也就是RTS脚与5脚间接个光耦,然后另一端就可以作为输出了,可以直接驱动继电器.这就是硬件部分.软件部分,界面上拖个MSCOMM控件,打开串口,然后用RTSEnabled属性的True与False来控制继电器即可,软件部分就完成了:)
      

  7.   

    RTS对地的电压分别是:+3~12V 逻辑1  -12V~-3V 逻辑0
    这点对选择光电耦合器来说的注意
      

  8.   

    一个串口可提供3个输入端,2个输出端,简单地使用MSCOMM控件就可以操作它们.以下是MSCOMM控件属性与串口引脚的对应关系.输入端:CDHolding,DSRHolding,CTSHolding
    对应
    1脚,6脚,8脚输出端:DTREnable,RTSEnable
    对应
    4脚,7脚这五个引脚的高电平为+3V到+15V,低电平为-3V到15V,均为相对5脚而言.所以只需要做非常简单的接口电路即可工作,并且编程上特别简单:)
      

  9.   

    不太清楚带负载能力,但至少能有个几毫安吧,驱动个LED没问题.而且也没谁直接就用IO口带重载吧,接口电路是必须的~~~再说几个光耦电路是很简单的,搭焊都行呀!
      

  10.   

    如果lz 有 plc 基础,可以用 plc 的 3 个输出 搭个 类似 3-8 译码器的东西扩展 输出接口
      

  11.   

    ...用PLC才是正解, 即使你从并口输出一个电压又能如何呢, 你还得再搭一个外部驱动电路才能得到想要的输出.
    主板输出的电压无非3.3V或者5V. 一般来说你得使用光隔=>初级放大=>固态或其他类型的继电器 才能搭出你要的输出, 即麻烦又不稳定.
    你还不如让你们的电气工程师搭一个解码+功放电路, 利用现有的PLC上面的2个输出点扩展成4个. 00,01,10,11
    这个不用说了吧?
      

  12.   


    1.使用光耦,仍然需要有24V的电源供电
    2.PLC没有输出点并不影响使用其24V的电源,只要你总电流没有超过其规定值,在24V电源的节点上多并一根线出来就是了