日記/2017-10-14
をテンプレートにして作成
ホーム
検索
最終更新
テスト
リンク
ヘルプ
新規
pukiwiki-official
pukiwiki-dev
ヘルプ
プラグインヘルプ
開始行:
***ID-31をCI-Vで制御 [#y34482d8]
音声でUrCALLを入力させる前に、ID-31をCI-Vで入力させてみた。
インターフェースは以下参考((このサイトのおかげです。感謝...
bash shellとPython(2.7)で作成した。
参考:http://www.fbnews.jp/201708/myproject/index.html
+構成
Raspberry Pi(on VirtualBox) == Interface == ID-31(CI-V)
+Interface
&ref(IMG_2655.JPG,,40%);
+Menu Code((2017-10-16更新))
#!/bin/bash
PATH=~/bin:$PATH
export $PATH
ucl31.sh "CQCQCQ"
URCL0="CQCQCQ"
817.py
FREQ="438.17 MHz"
dup_off.py
DUP="Dup none"
while :
do
str1=""
clear
echo "Current Set.: $URCL0 $FREQ $DUP"
echo ""
wget -q -N http://aaa.bbb.ccc.ddd/data2.txt #自前サー...
head -25 data2.txt | cut -c12- | sort -u | grep -v " ...
cat /home/pi/bin/ref1.txt >> list0.txt
echo "-------------------------------------------"
cnt=0
while :
do
cnt=`expr $cnt + 2`
echo $(cat ref1.txt | head -$cnt | tail -2 | awk '{p...
if [ $cnt -gt 17 ]; then
break
fi
done
echo ""
read -t 5 -p "No. of CALL: " str1
VAL=$((str1 + 0))
case "$str1" in
"17" ) 817.py
FREQ="438.17 MHz" ;;
"60" ) 860.py
FREQ="438.60 MHz" ;;
"dn" ) dup_on.py
DUP="Dup -" ;;
"df" ) dup_off.py
DUP="Dup none" ;;
"pn" ) pwon.py ;; #電源ON
"pf" ) pwoff.py ;; #電源OFF
"vl" ) voll.py 7 ;; #ボリュームLOW
"vm" ) voll.py a ;; # 〃 MIDL
"vh" ) volh.py A ;; # 〃 HIGH
"mt" ) voll.py 2 ;; # 〃 MUTE
esac
if test $VAL -lt 100 -a $VAL -gt 0 ; then
URCL=`grep "$str1 -" list0.txt | head -1`
MEM1="$URCL"
URCL0=`echo "$URCL" | cut -c7-14`
/home/pi/bin/ucl31.sh "$URCL0" &
str1=""
VAL=""
fi
done
+ucl31.sh(UrCALL->d31.py)
#!/bin/bash
STR1=`echo $1 | cut -c1`
echo $STR1
if test "$STR1" = "s"; then
# echo "Found s"
STR2=`echo $1 | cut -c2-8`
python2 d31.py "$STR1" "$STR2"
else
python2 d31.py "" "$1"
fi
+d31.py(CI-V Control)
#!/usr/bin/python
import serial
import sys
import time
ser = serial.Serial('/dev/ttyUSB0',
baudrate=19200,
parity = serial.PARITY_NONE,
timeout=1)
ser.close()
ser.open()
ser.isOpen()
pm1 = sys.argv[1]
pm2 = sys.argv[2]
CMDGATETO = '\xFE\xFE\x84\x00\x1F\x01'
count = 0
while (count < 1):
# time.sleep(0.1)
RPT1 = 'JJ1YEG A'
RPT2 = 'JJ1YEG G'
URCL = pm2
URCL = URCL + ' '
if pm1 == "s":
# print pm1
URCL = URCL[:7]
else:
URCL = URCL[:8]
URCL = URCL + RPT1 + RPT2
CEND = '\xFD'
SLS = '\x2F'
ser.write(CMDGATETO)
if pm1 == "s":
ser.write(SLS.encode())
URCL = URCL.replace('_', ' ')
URCL = URCL.upper()
print URCL
ser.write(URCL.encode())
# ser.write(RPT1.encode())
# ser.write(RPT2.encode())
ser.write(CEND)
count = count + 1
ser.close()
+sample pic
メニュー画面(毎8秒更新)
&ref(menu04.JPG,,65%); &ref(IMG_2650.JPG,,30%); ⇨ &ref...
"93"を入力して"CQCQC...
また、メニューの個人コールサインの番号を入力すると、UrC...
メニューのリストは8秒毎に更新((JARL管理サーバーの「テ...
#clear
#comment
#navi(日記)
終了行:
***ID-31をCI-Vで制御 [#y34482d8]
音声でUrCALLを入力させる前に、ID-31をCI-Vで入力させてみた。
インターフェースは以下参考((このサイトのおかげです。感謝...
bash shellとPython(2.7)で作成した。
参考:http://www.fbnews.jp/201708/myproject/index.html
+構成
Raspberry Pi(on VirtualBox) == Interface == ID-31(CI-V)
+Interface
&ref(IMG_2655.JPG,,40%);
+Menu Code((2017-10-16更新))
#!/bin/bash
PATH=~/bin:$PATH
export $PATH
ucl31.sh "CQCQCQ"
URCL0="CQCQCQ"
817.py
FREQ="438.17 MHz"
dup_off.py
DUP="Dup none"
while :
do
str1=""
clear
echo "Current Set.: $URCL0 $FREQ $DUP"
echo ""
wget -q -N http://aaa.bbb.ccc.ddd/data2.txt #自前サー...
head -25 data2.txt | cut -c12- | sort -u | grep -v " ...
cat /home/pi/bin/ref1.txt >> list0.txt
echo "-------------------------------------------"
cnt=0
while :
do
cnt=`expr $cnt + 2`
echo $(cat ref1.txt | head -$cnt | tail -2 | awk '{p...
if [ $cnt -gt 17 ]; then
break
fi
done
echo ""
read -t 5 -p "No. of CALL: " str1
VAL=$((str1 + 0))
case "$str1" in
"17" ) 817.py
FREQ="438.17 MHz" ;;
"60" ) 860.py
FREQ="438.60 MHz" ;;
"dn" ) dup_on.py
DUP="Dup -" ;;
"df" ) dup_off.py
DUP="Dup none" ;;
"pn" ) pwon.py ;; #電源ON
"pf" ) pwoff.py ;; #電源OFF
"vl" ) voll.py 7 ;; #ボリュームLOW
"vm" ) voll.py a ;; # 〃 MIDL
"vh" ) volh.py A ;; # 〃 HIGH
"mt" ) voll.py 2 ;; # 〃 MUTE
esac
if test $VAL -lt 100 -a $VAL -gt 0 ; then
URCL=`grep "$str1 -" list0.txt | head -1`
MEM1="$URCL"
URCL0=`echo "$URCL" | cut -c7-14`
/home/pi/bin/ucl31.sh "$URCL0" &
str1=""
VAL=""
fi
done
+ucl31.sh(UrCALL->d31.py)
#!/bin/bash
STR1=`echo $1 | cut -c1`
echo $STR1
if test "$STR1" = "s"; then
# echo "Found s"
STR2=`echo $1 | cut -c2-8`
python2 d31.py "$STR1" "$STR2"
else
python2 d31.py "" "$1"
fi
+d31.py(CI-V Control)
#!/usr/bin/python
import serial
import sys
import time
ser = serial.Serial('/dev/ttyUSB0',
baudrate=19200,
parity = serial.PARITY_NONE,
timeout=1)
ser.close()
ser.open()
ser.isOpen()
pm1 = sys.argv[1]
pm2 = sys.argv[2]
CMDGATETO = '\xFE\xFE\x84\x00\x1F\x01'
count = 0
while (count < 1):
# time.sleep(0.1)
RPT1 = 'JJ1YEG A'
RPT2 = 'JJ1YEG G'
URCL = pm2
URCL = URCL + ' '
if pm1 == "s":
# print pm1
URCL = URCL[:7]
else:
URCL = URCL[:8]
URCL = URCL + RPT1 + RPT2
CEND = '\xFD'
SLS = '\x2F'
ser.write(CMDGATETO)
if pm1 == "s":
ser.write(SLS.encode())
URCL = URCL.replace('_', ' ')
URCL = URCL.upper()
print URCL
ser.write(URCL.encode())
# ser.write(RPT1.encode())
# ser.write(RPT2.encode())
ser.write(CEND)
count = count + 1
ser.close()
+sample pic
メニュー画面(毎8秒更新)
&ref(menu04.JPG,,65%); &ref(IMG_2650.JPG,,30%); ⇨ &ref...
"93"を入力して"CQCQC...
また、メニューの個人コールサインの番号を入力すると、UrC...
メニューのリストは8秒毎に更新((JARL管理サーバーの「テ...
#clear
#comment
#navi(日記)
ページ名: