30天备战半程马拉松

3月24号,半程马拉松,2月28号抽签。这是我的第一次马拉松。

“马拉松是挑战人类极限的运动,请对马拉松保持敬畏之心,请对你自己的生命保持敬畏之心。”

从2月20号开始备战:

Day1

许久没有运动了,身上堆积的脂肪越来越多,右脚踝和膝盖以前在跑步机上运动有过疼痛的经历,这次不敢贸然行动,决定先舒展舒展筋骨。

在跑步机上走了5公里,走完下了跑步机,感觉在飞。

Day2

跑步机上,先慢走了500米,然后慢跑了30分钟,3公里多一点。戴了护膝,右腿没有明显的不舒服。

步频 149
心率 174
配速 7‘22’

Continue reading

万用表频响以及示波器探头补偿电容

Qt5 获取所有网卡的地址信息

多网卡系统,需要获取每个网卡的地址信息。

代码:

Qt 5.12.0 + VS2015sp3 + Win10 测试通过

#include <QCoreApplication>
#include <QtNetwork>
#include <QDebug>

int main()
{
    QList<QNetworkInterface> interfaces = QNetworkInterface::allInterfaces();
    foreach (QNetworkInterface interface, interfaces) {
        if((interface.flags() & QNetworkInterface::CanBroadcast) && (interface.flags() & QNetworkInterface::IsRunning)){
            QList<QNetworkAddressEntry> addresses = interface.addressEntries();
            foreach (QNetworkAddressEntry address, addresses) {
                qDebug()<<"------------------------------------";
                qDebug()<<"Interface Flags: "<<interface.flags();
                qDebug()<<"IP: "<<address.ip().toString();
                qDebug()<<"Netmask: "<<address.netmask().toString();
                qDebug()<<"Broadcast: "<<address.broadcast().toString();
            }
        }
    }
    return 0;
}

Continue reading

KUKAVARPROXY 的 UDP 自动应答消息

KUKAVARPROXY 开放了源码 https://github.com/ImtsSrl/KUKAVARPROXY ,得以查看如何应答客户端的实现部分。

一、概要

概括来说,KUKAVARPROXY启动后,会建立一个UDP对象监听 6999 端口,如果收到报文 “WHEREAREYOU?”,则会向客户端的 7000 端口发送 “KUKA|” & $MODEL_NAME[ ] & “|” & $KR_SERIALNO 的UDP报文,客户端收到后就可获取服务端的信息,包括型号、序列号,当然也可以包括服务端的 IP 地址。

Continue reading