สารบัญ:
- ขั้นตอนที่ 1: เริ่มต้นด้วยคำแนะนำของ Haslettj
- ขั้นตอนที่ 2: ติดตั้ง GnuRadio และบล็อกสำหรับ RTL-SDR
- ขั้นตอนที่ 3: ดาวน์โหลดสคริปต์ GnuRadio
- ขั้นตอนที่ 4: ดาวน์โหลดตัวถอดรหัส
- ขั้นตอนที่ 5: ดาวน์โหลดเครื่องมืออื่นๆ
- ขั้นตอนที่ 6: อัปเดตสคริปต์
วีดีโอ: Raspberry Pi NOAA และ Meteor-M 2 ตัวรับ: 6 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
คำแนะนำนี้จะช่วยคุณตั้งค่าสถานีรับสัญญาณสำหรับ APT ไม่ใช่แค่จาก NOAA-15, 18 และ 19 แต่ยังรวมถึง Meteor-M 2 ด้วย
เป็นเพียงโครงการเล็ก ๆ ที่ตามมาในโครงการ "Raspberry Pi NOAA Weather Satellite Receiver" ที่ยอดเยี่ยมของ haslettj
ขั้นตอนที่ 1: เริ่มต้นด้วยคำแนะนำของ Haslettj
ก่อนที่คุณจะทำตามคำแนะนำของ haslettj ให้สังเกตการเปลี่ยนแปลงเหล่านี้ก่อน:
ที่อยู่เดิมสำหรับ wxtoimg ไม่ได้ใช้งานอีกต่อไป ตอนนี้คุณสามารถใช้ที่อยู่นี้แทนในคำสั่ง wget:
www.wxtoimgrestored.xyz/beta/wxtoimg-linux-armhf-2.11.2-beta.tar.gz
ฉันยังต้องทำการเปลี่ยนแปลงสคริปต์ "receive_and_process_satellite.sh" เพราะเห็นได้ชัดว่า rtl_fm ไม่ได้ส่งสัญญาณเสียงรูปแบบ "wav" แต่ไม่มีปัญหา ซอกซ์จัดการได้ ดังนั้นฉันจึงเปลี่ยนบรรทัดนี้:
sudo timeout $6 rtl_fm -f ${2}M -s 60k -g 45 -p 55 -E wav -E deemp -F 9 - | sox -t wav - $3.wav อัตรา 11025
สำหรับสิ่งนี้ (แต่อย่าลืมเปลี่ยนการตั้งค่าเกน "-g 0" และการตั้งค่าข้อผิดพลาดความถี่ PPM "-p 68" ด้วยสิ่งที่ใช้ได้กับฮาร์ดแวร์ของคุณ):
sudo timeout $6 rtl_fm -f ${2}M -s 48k -g 0 -p 68 -E dc -A fast -F 9 - | sox -t raw -r 48000 -es -b16 -c1 -V1 - $3.wav อัตรา 11025
ในสคริปต์เดียวกัน คุณอาจต้องการเปลี่ยนอาร์กิวเมนต์ wxtoimg "-e ZA" เป็น "-e MSA" เพื่อให้ได้ภาพสีที่สวยงาม ดังนี้:
/usr/local/bin/wxtoimg -m ${3}-map.png -e MSA $3.wav $3.png
ตอนนี้ไปทำ Instructable!
www.instructables.com/id/Raspberry-Pi-NOAA…
ขั้นตอนที่ 2: ติดตั้ง GnuRadio และบล็อกสำหรับ RTL-SDR
เครื่องรับ Meteor-M 2 ใช้ GnuRadio ในการติดตั้งสิ่งที่คุณต้องการ ให้ทำดังนี้
sudo apt ติดตั้ง gnuradio
sudo apt ติดตั้ง gr-osmosdr
ขั้นตอนที่ 3: ดาวน์โหลดสคริปต์ GnuRadio
หากคุณไม่คุ้นเคย GnuRadio มีเครื่องมือกราฟิกที่เรียกว่า GnuRadio-Companion ซึ่งสามารถใช้สร้างโฟลว์กราฟและคอมไพล์ลงในโค้ด Python ที่ดำเนินการได้
ฉันได้แยกตัวรับ "meteor-m2-lrpt" ของ "otti-soft" โดยแก้ไขพารามิเตอร์บางตัวเพื่อปรับปรุงประสิทธิภาพและใช้ RTL-SDR แทน Airspy ดาวน์โหลดได้จากที่นี่:
github.com/NateDN10/meteor-m2-lrpt
ไฟล์.grc สามารถเปิดได้ด้วย GnuRadio-Companion แต่ไม่ใช่สคริปต์ที่เรียกใช้งานได้ - มีไว้เพื่อใช้อ้างอิงและใช้งานได้จริง เพื่อให้มันใช้งานได้ ให้คัดลอกไฟล์ "rtlsdr_m2_lrpt_rx.py" ลงในไดเร็กทอรี /home/pi/weather/predict ของคุณและตรวจสอบให้แน่ใจว่าไฟล์ปฏิบัติการได้:
chmod +x rtlsdr_m2_lrpt_rx.py
คุณจะต้องเปลี่ยนการชดเชยความถี่ด้วย:
self.rtlsdr_source_0.set_freq_corr(69, 0)
และรับสิ่งใดก็ตามที่เหมาะกับการตั้งค่าของคุณ:
self.rtlsdr_source_0.set_gain(4, 0)
ขั้นตอนที่ 4: ดาวน์โหลดตัวถอดรหัส
ดาวน์โหลดตัวถอดรหัส Meteor LRPT ของ "artlav" จากที่นี่ - คุณต้องการเวอร์ชัน Linux ARM:
orbides.org/page.php?id=1023
คุณสามารถทำได้บน Raspberry Pi โดยใช้คำสั่งเหล่านี้:
cd /home/pi/weather
wget https://orbides.org/etc/medet/medet_190825_arm.tar.gz mkdir medet; cd medet tar xvzf../medet_190825_arm.tar.gz
ตอนนี้คุณควรมีไดเร็กทอรีชื่อ "medet" ภายในไดเร็กทอรี "weather" และภายในไดเร็กทอรีควรเป็นไฟล์ปฏิบัติการ "medet_arm"
ขั้นตอนที่ 5: ดาวน์โหลดเครื่องมืออื่นๆ
ในการแก้ไขอัตราส่วนภาพของรูปภาพ เราจะใช้เครื่องมือ Python "meteor_rectify" ของ dbdexter จาก Github
หากคุณยังไม่ได้ติดตั้ง git และ ImageMagick:
sudo apt ติดตั้ง git
sudo apt ติดตั้ง imagemagick
จากนั้นโคลนที่เก็บ:
cd /home/pi/weather
โคลน git
คุณอาจต้องการไลบรารี Python "pillow" และ "numpy":
pip3 ติดตั้ง numpy
pip3 ติดตั้งหมอน
ขั้นตอนที่ 6: อัปเดตสคริปต์
ขั้นแรก เพิ่มบรรทัดต่อไปนี้ต่อท้าย "schedule_all.sh":
/home/pi/weather/predict/schedule_satellite.sh "METEOR-M 2" 137.1000
จากนั้นใน "schedule_satellite.sh" ให้เปลี่ยนบล็อกนี้:
ถ้า [$MAXELEV -gt 19]; แล้ว
echo ${1//" "}${OUTDATE} $MAXELEV echo "/home/pi/weather/predict/receive_and_process_satellite.sh \"${1}\" $2 /home/pi/weather/${1// " "}${OUTDATE} /home/pi/weather/predict/weather.tle $var1 $TIMER" | "}${หมดอายุ} /home/pi/weather/predict/weather.tle $var1 $TIMER ที่ `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"`
สำหรับสิ่งนี้:
ถ้า [$MAXELEV -gt 19]; แล้ว
echo ${1//" "}${OUTDATE} $MAXELEV if ["$1" == "METEOR-M 2"] แล้ว echo "/home/pi/weather/predict/receive_and_process_meteor.sh \"${1} " $2 /home/pi/weather/${1//" "}${หมดอายุ} /home/pi/weather/predict/weather.tle $var1 $TIMER" | ที่ `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"` อื่น echo "/home/pi/weather/predict/receive_and_process_satellite.sh \"${1} " $2 /home/pi/weather/${1//" "}${OUTDATE} /home/pi/weather/predict/weather.tle $var1 $TIMER" | ที่ `date --date="TZ=\"UTC\" $START_TIME" +"%H:%M %D"` fi fi
สุดท้าย สร้างสคริปต์ใหม่ชื่อ "receive_and_process_meteor.sh" โดยมีเนื้อหาดังต่อไปนี้:
#! /bin/bash
# $1 = ชื่อดาวเทียม # $2 = ความถี่ # $3 = ชื่อไฟล์พื้นฐาน # $4 = ไฟล์ TLE # $5 = เวลาเริ่มต้น EPOC # $6 = เวลาจับภาพ cd /home/pi/weather timeout $6 ทำนาย/rtlsdr_m2_lrpt_rx.py $1 $2 $3 # ฤดูหนาว #medet/medet_arm ${3}.s $3 -r 68 -g 65 -b 64 -na -S # ฤดูร้อน medet/medet_arm ${3}.s $3 -r 66 -g 65 -b 64 -na -S rm ${3}.s ถ้า [-f "${3}_0.bmp"]; จากนั้น #rm ${3}.s dte=`date +%H` # Winter #convert ${3}_1.bmp ${3}_1.bmp ${3}_0.bmp -combine -set colorspace sRGB ${ 3}.bmp #convert ${3}_2.bmp ${3}_2.bmp ${3}_2.bmp -combine -set colorspace sRGB -negate ${3}_ir.bmp # ฤดูร้อนแปลง ${3}_2.bmp ${3}_1.bmp ${3}_0.bmp -combine -set colorspace sRGB ${3}.bmp meteor_rectify/rectify.py ${3}.bmp # ฤดูหนาวเท่านั้น #meteor_rectify/rectify.py ${ 3}_ir.bmp # หมุนภาพตอนเย็น 180 องศาถ้า [$dte -lt 13]; จากนั้นแปลง ${3}-rectified.png -normalize -quality 90 $3.jpg # Winter only #convert ${3}_ir-rectified.png -normalize -quality 90 ${3}_ir.jpg else convert ${3} -rectified.png -rotate 180 -normalize -quality 90 $3.jpg # Winter only #convert ${3}_ir-rectified.png -rotate 180 -normalize -quality 90 ${3}_ir.jpg fi rm $3.bmp rm ${3}_0.bmp rm ${3}_1.bmp rm ${3}_2.bmp rm ${3}-rectified.png # ฤดูหนาวเท่านั้น #rm ${3}_ir.bmp #rm ${3} _ir-rectified.png fi
ทำให้ปฏิบัติการได้:
chmod +x รับ_and_process_meteor.sh
และนั่นแหล่ะ! ครั้งต่อไปที่งาน cron ที่คุณมีอยู่จะทำงานเพื่อกำหนดเวลาดาวเทียม Meteor-M 2 จะถูกกำหนดเวลาไว้ด้วย ตัวถอดรหัสจะส่งออกไฟล์.bmp โดยใช้ APID 66 สำหรับสีแดง 65 สำหรับสีเขียว และ 64 สำหรับสีน้ำเงิน
เอาต์พุตมาตรฐานจากสคริปต์ เมื่อเรียกใช้โดยตัวจัดกำหนดการ จะถูกผนวกเข้ากับ /var/mail/pi หากต้องการอ่านให้ใช้คำสั่งนี้:
น้อยกว่า /var/mail/pi
และหากต้องการลบข้อความเก่า ให้ทำดังนี้
/var/mail/pi
แนะนำ:
ติดตาม: ศูนย์สื่อขั้นสูงพร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): 3 ขั้นตอน
ติดตาม: Advanced Media Center พร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): บทความนี้เป็นบทความต่อจากบทความก่อนหน้าของฉันที่ประสบความสำเร็จค่อนข้างมากเกี่ยวกับการสร้างศูนย์สื่ออเนกประสงค์ โดยอ้างอิงจาก Raspberry PI ที่ได้รับความนิยมมากในตอนแรก แต่ ในภายหลัง เนื่องจากไม่มีเอาต์พุตที่สอดคล้องกับ HEVC, H.265 และ HDMI 2.2 จึงมีสวิตช์
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
ตัวรับ RC ไปยังพีซีด้วย Arduino: 4 ขั้นตอน
RC Receiver to Pc With Arduino: นี่คือบทความคำแนะนำสำหรับ RC receiver pc ผ่านเอกสาร arduino github หากคุณต้องการสร้างการตั้งค่านี้ โปรดเริ่มอ่าน github README ก่อน คุณจะต้องใช้ซอฟต์แวร์เพื่อให้ใช้งานได้เช่นกันhttps://github.com/RobbeDGreef/Ard
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: 3 ขั้นตอน
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: Story A beacon จะส่งสัญญาณอย่างต่อเนื่องเพื่อให้อุปกรณ์บลูทู ธ อื่น ๆ รู้ว่ามีอยู่ และฉันอยากได้บีคอนบลูทูธเพื่อติดตามกุญแจมาตลอด เพราะฉันลืมเอามันมาเหมือน 10 ครั้งในปีที่แล้ว และฉันก็เกิดขึ้น
RuuviTag และ PiZero W และ Blinkt! เทอร์โมมิเตอร์แบบ Bluetooth Beacon: 3 ขั้นตอน (พร้อมรูปภาพ)
RuuviTag และ PiZero W และ Blinkt! เครื่องวัดอุณหภูมิที่ใช้ Bluetooth Beacon: คำแนะนำนี้อธิบายวิธีการอ่านข้อมูลอุณหภูมิและความชื้นจาก RuuviTag โดยใช้ Bluetooth กับ Raspberry Pi Zero W และเพื่อแสดงค่าเป็นเลขฐานสองบน Pimoroni กะพริบตา! pHAT.หรือเรียกสั้นๆ ว่า จะสร้างสถานะอย่างไร