精华内容
下载资源
问答
  • 软件无线电平台GNU RADIO中信号处理模块的搭建,用C++写了个简单的信号处理实验,对于入门的童鞋可以实现快速的搭建自己模块。
  • LAN-401信号处理模块 用户手册,内容非常详细。包括硬件配置、vivado开发、PS和PL的关系、ARM软件下载、界面等
  • Python中对信号处理模块主要是使用signal模块,但signal主要是针对Unix系统,所以在Windows平台上Python不能很好的发挥信号处理的功能。 要查看Python中的信号量,可以使用dir(signal)来查看。 signal.signal() 在...
  • 在GNU Radio中编写自定义信号处理模块
  • 针对小型高速信号处理模块逐渐向小型化、微型化、便携式发展的特点,提出了一种堆叠式小型高速信号处理模块预设计方案。该方案依据设备全密闭腔体结构,分析了高速信号采集板和高速信号处理板散热分布,并依据散热...
  • 针对水下目标的主被动定位功能需求和具体的技术指标要求,结合数字信号处理器(DSP)和现场可编程门阵列(FPGA)的各自优势,设计了基于DSP及FPGA的数字信号处理模块,以此处理模块为硬件平台,编程实现了相应的时延...
  • 本测试系统已经成功应用于两种型号的弱信号处理模块的测试工作,经过批量的产品测试,证明可以显著提高测试效率和测试准确度,具有显著的实用价值。供读者参考。
  • 基于FPGA的数字信号处理模块设计与实现
  • 为满足信号处理领域不断增长的任务需求并适应不同的应用场合,设计高性能通用并行信号处理模块,进而构建各类信号处理系统是一种趋势。基于对共享总线和分布式两种并行结构的理论分析,结合信号处理系统的特点,设计...
  • 行业分类-作业装置-一种信号处理模块及方法.zip
  • 信号调理模块或称隔离变送器,是采用光电、磁电等隔离技术,实现输入输出信号相互隔离转换的装置。因其抗干扰能力强,传输精度高,广泛应用于仪器仪表、油田、石化加工、装备制造等领域,是工业控制系统中重要的组成...
  • 针对水下目标的主被动定位功能需求和具体的技术指标要求,结合数字信号处理器(DSP)和现场可编程门阵列(FPGA)的各自优势,设计了基于DSP及FPGA的数字信号处理模块,以此处理模块为硬件平台,编程实现了相应的时延估计...
  • 基于FPGA+DSP的雷达信号处理模块设计.pdf
  • 基于DSP与FPGA光电信号处理模块的设计.pdf
  • 基于Matlab的信号处理模块的FPGA快速开发.pdf
  • 基于FPGA的数字信号处理模块设计与实现.pdf
  • 行业分类-电信-一种设有稳定电源模块的雷达信号处理模块.rar
  • 基于DSP的气象传真接收机信号处理模块设计,刘繁明,王振鹏,针对现有气象传真机信号处理模块大量使用模拟器件、体积大、功耗高、不利于模块的小型化、且因模拟器件性能受环境影响较大,致使
  • 基带信号处理模块

    千次阅读 2013-02-23 22:57:36
     DSP处理模块包括:载波频偏纠正、载波相偏估计、单倍符号抽取、解调(OFDM、QAM16、OQPSK、QPSK、DBPSK、GMSK等)、解交织、译码(viterbi、Turbo)、解扰、解密、校验,网口通信等。 4、上位机软件

    1、模拟前端处理--中频信号

    2、数字前端处理--基带信号

         FPGA处理模块包括:AD采样、变频、抽取、滤波等部分。

    3、数字后端处理

         DSP处理模块包括:载波频偏纠正、载波相偏估计、单倍符号抽取、解调(OFDM、QAM16、OQPSK、QPSK、DBPSK、GMSK等)、解交织、译码(viterbi、Turbo)、解扰、解密、校验,网口通信等。

    4、上位机软件

         软件根据通信协议,分析通信信息。

     

    DSP处理模块、FPGA处理模块,后续详细讲解!

    展开全文
  • python 信号处理模块signal

    千次阅读 2018-04-30 17:01:47
    signal包负责在Python程序内部处理信号,典型的操作包括预设信号处理函数,暂停并等待信号,以及定时发出SIGALRM等。要注意,signal包主要是针对UNIX平台(比如Linux, MAC OS),而Windows内核中由于对信号机制的支持...

    signal包负责在Python程序内部处理信号,典型的操作包括预设信号处理函数,暂停并等待信号,以及定时发出SIGALRM等。要注意,signal包主要是针对UNIX平台(比如Linux, MAC OS),而Windows内核中由于对信号机制的支持不充分

    信号名称

    signal包定义了各个信号名及其对应的整数,比如

    signal.SIGABORT
    signal.SIGHUP  # 连接挂断
    signal.SIGILL  # 非法指令
    signal.SIGINT  # 连接中断
    signal.SIGKILL # 终止进程(此信号不能被捕获或忽略)
    signal.SIGQUIT # 终端退出
    signal.SIGTERM # 终止
    signal.SIGALRM # 超时警告
    signal.SIGCONT # 继续执行暂停进程
    • 每个信号都对应这一个整数
    import signal
    print signal.SIGALRM
    # 输出结果14
    • Python所用的信号名和Linux一致。你可以如下命令进行查询
    $ man 7 signal

    常用信号处理函数

    1. signal.signal(signalnum, handler)

    signal包的核心是使用signal.signal()函数来预设(register)信号处理函数,如下所示:

    singnal.signal(signalnum, handler)

    signalnum为某个信号,handler为该信号的处理函数。我们在信号基础里提到,进程可以无视信号,可以采取默认操作,还可以自定义操作。当handler为signal.SIG_IGN时,信号被无视(ignore)。当handler为singal.SIG_DFL,进程采取默认操作(default)。当handler为一个函数名时,进程采取函数中定义的操作

    import signal
    # Define signal handler function
    def myHandler(signum, frame):
        print('I received: ', signum)
    
    if __name__ == '__main__':
        # register signal.SIGTSTP's handler
        signal.signal(signal.SIGTSTP, myHandler)
        signal.pause()
        print('End of Signal Demo')
    • 在主程序中,我们首先使用signal.signal()函数来预设信号处理函数。然后我们执行signal.pause()来让该进程暂停以等待信号,以等待信号。当信号SIGUSR1被传递给该进程时,进程从暂停中恢复,并根据预设,执行SIGTSTP的信号处理函数myHandler()。myHandler的两个参数一个用来识别信号(signum),另一个用来获得信号发生时,进程栈的状况(stack frame)。这两个参数都是由signal.singnal()函数来传递的。
    • 当程序运行到signal.pause()的时候,进程暂停并等待信号。此时,通过按下CTRL+Z向该进程发送SIGTSTP信号。我们可以看到,进程执行了myHandle()函数,
      随后返回主程序,继续执行。(当然,也可以用 psprocessID,使 p s 查 询 p r o c e s s I D , 再 使 用 kill来发出信号。)
    • 进程并不一定要使用signal.pause()暂停以等待信号,它也可以在进行工作中接受信号,比如将上面的signal.pause()改为一个需要长时间工作的循环。我们可以根据自己的需要更改myHandler()中的操作,以针对不同的信号实现个性化的处理。

    2. signal.alarm(time)

    一个有用的函数是signal.alarm(),它被用于在一定时间之后,向进程自身发送SIGALRM信号:

    import signal
    # Define signal handler function
    def myHandler(signum, frame):
        print("Now, it's the time")
        exit()
    
    if __name__ == '__main__':
        # register signal.SIGALRM's handler
        signal.signal(signal.SIGALRM, myHandler)
        signal.alarm(5)
        while True:
            print('not yet')
    • 我们这里用了一个无限循环以便让进程持续运行。在signal.alarm()执行5秒之后,进程将向自己发出SIGALRM信号,随后,信号处理函数myHandler开始执行。

    3. os.kill

    signal包的核心是设置信号处理函数。除了signal.alarm()向自身发送信号之外,并没有其他发送信号的功能。但在os包中,有类似于linux的kill命令的函数,分别为

    os.kill(pid, sid)
    os.killpg(pgid, sid)

    分别向进程和进程组(见Linux进程关系)发送信号。sid为信号所对应的整数或者singal.SIG*


    参考文献

    展开全文
  • pyo是一个用C语言编写的Python模块,用于帮助创建数字信号处理脚本 Pyo - Python DSP 模块 pyo 是一个用 C 编写的 Python 模块,用于帮助创建数字信号处理脚本。 pyo 是一个 Python 模块,包含用于各种音频信号处理...
  • 导波雷达物位计信号处理模块的详细设计,里面包含了设计思路,设计电路图等信息
  • labview信号处理模块key

    2009-09-15 14:36:49
    labview信号处理模块key。现在这种东西很难找的。抓紧下啊
  •   这一部分我们来介绍两种常用的信号处理模块,它们构成了我们大部分的通信系统。注意我们只从算法这一层面讨论这两种模块,看它们是如何改变信号的时域以及频域特性。具体的实现,可以在电子线路、数字信号处理等...

      这一部分我们来介绍两种常用的信号处理模块,它们构成了我们大部分的通信系统。注意我们只从算法这一层面讨论这两种模块,看它们是如何改变信号的时域以及频域特性。具体的实现,可以在电子线路、数字信号处理等课程里面找到相关内容。

    1、滤波器

       作为一种重要的线性系统,滤波器模块在通信系统中起着非常重要的作用。图1中给出了滤波器模块的模型图,其中 x ( t ) x(t) x(t) X ( f ) X(f) X(f)分别为输入信号的波形和频谱, h ( t ) h(t) h(t) H ( f ) H(f) H(f)分别为滤波器的时域冲激响应和频域传递函数, y ( t ) y(t) y(t) Y ( f ) Y(f) Y(f)分别为滤波器输出信号的波形和频谱。
    在这里插入图片描述

    图1 滤波器模块框图

       下面我们来看滤波器在通信系统中的两个应用,根据设计需要,分别塑造信号的频谱与波形。

    1.1 塑造信号的频谱

       由于输出信号频谱等于输入信号频谱与滤波器频域传递函数相乘,即 Y ( f ) = X ( f ) H ( f ) Y(f)=X(f)H(f) Y(f)=X(f)H(f)。利用滤波器,通过设计 H ( f ) H(f) H(f),我们可以按照需求来塑造滤波器输出信号的频谱。

    【思考题1】如果滤波器输入信号的波形为 x ( t ) = R e c t t T 0 x(t)={\rm Rect}\frac{t}{T_0} x(t)=RectT0t,其中 T 0 T_0 T0=0.01ms。现有滤波器 h ( t ) = S a ( π f 1 t ) h(t)={\rm Sa}(\pi f_1t) h(t)=Sa(πf1t),其中 f 1 = 1 f_1=1 f1=1kHz。求输出信号 y ( t ) y(t) y(t)的波形与频谱。注意比较输入信号与输出信号之间频谱区别.

    3.2 塑造信号的波形

       前面我们提到输出信号波形等于输入信号波形与滤波器冲激函数的卷积,即 y ( t ) = x ( t ) ∗ h ( t ) y(t)=x(t)*h(t) y(t)=x(t)h(t)
       注意如果滤波器的输入信号为冲激信号,那么输出信号就为滤波器的冲激响应。也就是说,通过改变滤波器的冲激响应,在通信系统中就可以获得不同的传输波形。

    【思考题2】如果滤波器输入信号为 x ( t ) = ∑ n = − ∞ ∞ δ ( t − n T s ) x(t)=\sum_{n=-\infty}^{\infty}\delta(t-nT_s) x(t)=n=δ(tnTs),考虑滤波器冲激响应分别为门函数 h 1 ( t ) = R e c t ( t τ ) h_1(t)={\rm Rect}(\frac{t}{\tau}) h1(t)=Rect(τt)和三角函数 h 2 ( t ) = Λ ( t 2 τ ) h_2(t)=\Lambda (\frac{t}{2\tau}) h2(t)=Λ(2τt),请画出输出信号波形。

    2、频域卷积定理与乘法器模块

       我们来看看频域卷积定理:
    (2.1) y ( t ) = x 1 ( t ) x 2 ( t ) ↔ Y ( f ) = X 1 ( f ) X 2 ( f ) . \tag{2.1} y(t)=x_1(t)x_2(t)\leftrightarrow Y(f)=X_1(f)X_2(f). y(t)=x1(t)x2(t)Y(f)=X1(f)X2(f).(2.1)这意味着,如果两个信号波形 x 1 ( t ) x_1(t) x1(t) x 2 ( t ) x_2(t) x2(t)相乘,得到信号 y ( t ) y(t) y(t),那么 y ( t ) y(t) y(t)的傅里叶变换(频谱密度)等于 x 1 ( t ) x_1(t) x1(t) x 2 ( t ) x_2(t) x2(t)频谱密度 X 1 ( f ) X_1(f) X1(f) X 2 ( f ) X_2(f) X2(f)卷积的结果。
       前面我们谈到,时域卷积定理说明了线性系统的时域与频域关系,那么频域卷积定理在系统上有什么意义呢?
       频域卷积定理说明了我们另外一种常用的模块,称为乘法器的时域与频域特性。
       如果乘法器模块输入两个信号, x 1 ( t ) x_1(t) x1(t) x 2 ( t ) x_2(t) x2(t),乘法器的作用就是将这两个信号相乘得到输出信号 y ( t ) y(t) y(t),如图2所示。
    在这里插入图片描述

    图2 乘法器模块框图

    3、用乘法器和滤波器来搭建第一个调制解调器

       其实我们可以把乘法器和滤波器看成是积木,我们的通信系统可以用这两种模块搭建出来。
       图3就是一种非常重要的调制系统,模拟幅度调制,怎么样看起来不难吧,就是一个乘法器。图4是模拟幅度调制的相干解调器,好像也不难吧,就是一个乘法器外加一个滤波器。
    在这里插入图片描述

    图3 模拟幅度调制模型
    在这里插入图片描述

    图4 模拟幅度调制信号相干解调器模型

    【思考题3】假定 m ( t ) = S a ( π f 1 t ) m(t)={\rm Sa}(\pi f_1t) m(t)=Sa(πf1t),请写出图3、图4中 s ( t ) s(t) s(t) s d ( t ) s_d(t) sd(t) m o ( t ) m_o(t) mo(t)波形与频谱的表达式。如果 f 1 &lt; &lt; f c f_1&lt;&lt;f_c f1<<fc,请画出 s ( t ) s(t) s(t) s d ( t ) s_d(t) sd(t) m o ( t ) m_o(t) mo(t)的波形以及频谱示意图。

    展开全文
  • Python signal 信号处理模块

    千次阅读 2017-07-06 13:21:56
    Table of Contents 1. signal模块简介 ... 常用信号处理函数 2. signal使用示例 2.1. 示例12.2. 示例2 3. 参考资料 signal模块简介 最近在看Linux signal 相关内容,signal可以被用
     
    

    signal模块简介

    最近在看Linux signal 相关内容,signal可以被用来进程间通信和异步处理。Python标准库提供了signal包可以用来处理信号相关。这里讨论的是Unix系统中Python的signal模块。

    signal简单示例

    官方文档上有这样的示例:

    import signal, os
    
    # 定义一个信号处理函数,该函数打印收到的信号,然后raise IOError
    def handler(signum, frame):
        print 'Signal handler called with signal', signum
        raise IOError("Couldn't open device!")
    
    # 对SIGALRM(终止)设置处理的handler, 然后设置定时器,5秒后触发SIGALRM信号
    signal.signal(signal.SIGALRM, handler)
    signal.alarm(5)
    
    # This open() may hang indefinitely
    fd = os.open('/dev/ttyS0', os.O_RDWR)
    
    signal.alarm(0)          # 关闭定时器

    该示例实现的功能是,为了防止打开一个文件出错或者其他异常一直处于等待的状态,设定一个定时器,5秒后触发IOError。如果5s内正常打开文件,则清除定时器。

    signal说明

    基本的信号名

    import signal
    
    signal.SIGABORT
    signal.SIGHUP  # 连接挂断
    signal.SIGILL  # 非法指令
    signal.SIGINT  # 连接中断
    signal.SIGKILL # 终止进程(此信号不能被捕获或忽略)
    signal.SIGQUIT # 终端退出
    signal.SIGTERM # 终止
    signal.SIGALRM  # 超时警告
    signal.SIGCONT  # 继续执行暂停进程
    
    等等...

    常用信号处理函数

    • signal.signal(signalnum, handler)
      设置信号处理的函数
    • signal.alarm(time)
      设置发送SIGALRM信号的定时器
    • os.kill
      这个不属于signal模块,但其可以使用给某一进程发送信号

    signal使用示例

    示例1

    # From project httpscreenshot-master, under directory , in source file httpscreenshot.py.
    def timeoutFn(func, args=(), kwargs={}, timeout_duration=1, default=None):
        import signal
    
        class TimeoutError(Exception):
            pass
    
        def handler(signum, frame):
            raise TimeoutError()
    
        # set the timeout handler
        signal.signal(signal.SIGALRM, handler)
        signal.alarm(timeout_duration)
        try:
            result = func(*args, **kwargs)
        except TimeoutError as exc:
            result = default
        finally:
            signal.alarm(0)
            signal.signal(signal.SIGALRM, signal.SIG_DFL)
    
        return result

    上面这个示例实现了设置函数执行超时返回默认结果的功能。先是设置了一个超时处理函数,在函数中抛出自定义的抛出异常。在执行函数前设置了 signal.alarm ,当超出时间后触发抛出异常 SIGALRM, 然后捕获这个异常设置默认值,最后做下清理工作将定时器取消,并且将对 SIGALRM 的处理设为默认。

    示例2

    这个示例来源于这里。 需求是动态加载python导入的模块,也就是说,当导入的模块代码更新时,希望可以立即更新引用的代码。示例如下:

    # lib.py
    def scrape_me_bro():
            print "Scraping is fun"
    
    
    
    #scrape.py
    import time
    import signal
    import lib
    
    def scrape():
            # Assume we are hitting Streaming API
            # and doing something buzzwordy with it
            while True:
                    lib.scrape_me_bro()
                    time.sleep(2)
    
    def reload_libs(signum, frame):
            print "Received Signal: %s at frame: %s" % (signum, frame)
            print "Excuting a Lib Reload"
            reload(lib)
    
    # Register reload_libs to be called on restart
    signal.signal(signal.SIGHUP, reload_libs)
    
    # Main
    scrape()

    当运行scrape.py时,程序会每个两秒调用一次lib.py中的 scrape_me_bro() 方法,这时候如果lib.py里的方法变化了,向运行scrape.py的进程发送 SIGHUP 信号,那么它会重新加载lib.py,这样会接着循环执行修改后的 scrape_me_bro() 方法。

    原文地址:http://www.cnblogs.com/nisen/p/6071713.html

    参考资料

    展开全文
  • 多格式信号采集处理模块采用冗余设计,其内含有3个采集板卡,每个采集板卡均能采集3种起飞信号,模块整体能够采集多路多格式起飞信号,对于单种信号,可多路采集处理,选取最优采集结果向后输出。文中主要介绍了信号...
  • LabVIEW模块和工具包(图像和信号处理),适合学信号处理的同学用

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 169,813
精华内容 67,925
关键字:

信号处理模块