USRP B210同步采集

MIMO

Multiple Input Multiple Output的缩写,通过多只天线同时进行收发,增加无线网络基地台的涵盖范围。

MIMO(多输入多输出)是一项关键的无线技术,它可以将一个传输信号分割成多个流,而这些流则分散地传输到多个接收端。它可以显著地提高无线网络信号传输的传输距离、安全级别和吞吐量。

MIMO有以下优点:
1.涵盖范围广。MIMO可以应用到多种通信方式中,如无线宽带、WiFi、Bluetooth、LTE等,能够覆盖非常广泛的涵盖面;
2.功耗低。MIMO放置在垂直光滑的反射面上,可以把信号流量转发到几乎任何区域,因此更有效利用了传输功率,节约了能源;
3.传输距离增加。MIMO系统的穿墙效果显著提高了传输距离,使其能够更有效地突破抗干扰的障碍;
4.安全性增强。MIMO系统通过多路传输,使信号穿越的空间增多,减少了外来的破坏;
5.网络容量提高。MIMO能够提供更多信道和更多的波束来提升容量,同时具有比较稳定的接收效果;
6.减少成本。MIMO系统利用其多路传输的特性,能够共享信号源,从而可以将成本最小化,降低运营商的营运成本。

SMA

在这里插入图片描述
射频同轴连接器通常被认为是装接在电缆上或安装在仪器上的一种元件,作为传输线电气连接或分离的元件。它属于机电一体化产品,起到桥梁作用。

SMA连接器对于射频射频来说是非常普遍使用的一种连接器

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
要实现3台usrp b210的pps同步采集,需要以下步骤: 1. 配置每个usrp b210的时钟源为外部时钟源(例如GPSDO)。 2. 连接所有usrp b210的pps输出到一个交叉开关上,然后将交叉开关的输出连接到每个usrp b210的pps输入。 3. 在C代码中使用UHD库来控制每个usrp b210的采样参数和接收数据。 4. 在代码中使用UHD库的ppsgpio控制函数来同步usrp b210的pps输入。 下面是一个简单的示例代码,可以实现3台usrp b210的pps同步采集: ```c #include <uhd/usrp/multi_usrp.hpp> #include <uhd/utils/safe_main.hpp> #include <uhd/utils/thread_priority.hpp> #include <iostream> int UHD_SAFE_MAIN(int argc, char* argv[]) { //创建3个usrp b210的实例 uhd::usrp::multi_usrp::sptr usrp1 = uhd::usrp::multi_usrp::make("addr=192.168.10.2"); uhd::usrp::multi_usrp::sptr usrp2 = uhd::usrp::multi_usrp::make("addr=192.168.10.3"); uhd::usrp::multi_usrp::sptr usrp3 = uhd::usrp::multi_usrp::make("addr=192.168.10.4"); //设置采样参数 usrp1->set_rx_rate(10e6); usrp1->set_rx_antenna("RX2"); usrp1->set_rx_bandwidth(10e6); usrp1->set_rx_gain(0); usrp2->set_rx_rate(10e6); usrp2->set_rx_antenna("RX2"); usrp2->set_rx_bandwidth(10e6); usrp2->set_rx_gain(0); usrp3->set_rx_rate(10e6); usrp3->set_rx_antenna("RX2"); usrp3->set_rx_bandwidth(10e6); usrp3->set_rx_gain(0); //同步pps输入 usrp1->set_time_now(uhd::time_spec_t(0.0)); usrp2->set_time_next_pps(uhd::time_spec_t(1.0)); usrp3->set_time_next_pps(uhd::time_spec_t(2.0)); //开始接收数据 uhd::stream_args_t stream_args("fc32"); uhd::rx_streamer::sptr rx_stream1 = usrp1->get_rx_stream(stream_args); uhd::rx_streamer::sptr rx_stream2 = usrp2->get_rx_stream(stream_args); uhd::rx_streamer::sptr rx_stream3 = usrp3->get_rx_stream(stream_args); uhd::rx_metadata_t rx_md; std::vector<std::complex<float>> buff1(1024); std::vector<std::complex<float>> buff2(1024); std::vector<std::complex<float>> buff3(1024); while (true) { size_t num_rx_samps1 = rx_stream1->recv(&buff1.front(), buff1.size(), rx_md); size_t num_rx_samps2 = rx_stream2->recv(&buff2.front(), buff2.size(), rx_md); size_t num_rx_samps3 = rx_stream3->recv(&buff3.front(), buff3.size(), rx_md); //处理接收到的数据 //... } return EXIT_SUCCESS; } ``` 需要注意的是,以上代码仅为示例代码,并不能直接运行。在实际应用中,需要根据具体的硬件配置和应用场景进行相应的修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阳光开朗男孩

你的鼓励是我最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值