0

私は RPi 4 + Sixfab Base HAT + Quectel EC25 4G LTE モデム + Picam を持っており、picam から写真を撮り、TCP/IP プロトコルを使用して 4G 経由で送信し、Linux Socket で写真を受信して​​表示するプログラムを開発しようとしています。サーバ。

私はこれについて多くの経験がなく、ソケットのプログラミング情報を見てきましたが、wifi やイーサネットの代わりに Quectel 4G モデムを使用しているため、完全には適合しません。つまり、ソケットを使用できないということです。機能しますが、AT コマンドのみです。

これまでのところ、4G を使用して Rpi から base64 でエンコードされた小さな 20x20 png を送信し、ソケット サーバーで受信することはできますが、小さな画像を再構築することはできません。

しかし、データが大きくなった場合は、プロトコル (ファイル サイズ、開始 - 終了など) を定義する必要があります。いくつかのカスタム プロトコルを見たことがありますが、それらはソケット サーバー専用であり、4G モデムの使用を組み込んでいません。誰かが私を正しい方向に導くことができれば幸いです。.

if ser.isOpen(): # if modem is open
try:
        ser.flushInput() 
        ser.flushOutput()

        BG96 = bg96_init()  # initialize function for the Modem

        i = 0
    encoded = ""
        #start = time.time()
        while BG96:# 
                if i==0:# does something the first time but not relevant here << 
            print(i)
        encoded = base64.b64encode(open('testingimg.png', 'rb').read())
                print("Data size to send to 4G module:" , sys.getsizeof(encoded))
        print("The Image String: " , encoded)
        bg96_msg(encoded) # This is a function that sends the data via TCP with AT commands 

        encoded=""
        
        ser.flushInput() 
        ser.flushOutput()
        i = i+
        time.sleep(0.33)
4

1 に答える 1