parent
1ec01b6972
commit
944c39699d
|
@ -54,13 +54,63 @@ Opensat first generation cubesat bus
|
|||
* http://kcsa.taobao.com ( work in progress )
|
||||
|
||||
# Build environment
|
||||
* Firmware: IAR EWARM 7.2+ ( commerical toolchain. gcc support work in progress )
|
||||
* FPGA: Microsemi Libero SoC 11.3+ ( it's free, see licensing section in https://www.microsemi.com/product-directory/design-resources/1750-libero-soc )
|
||||
* Ground control: Qt 5.2+ ( it's free )
|
||||
* Radio transceiver: Ubuntu with Gnuradio 3.7.10+, UHD 003.010.001+ installed. ( USRP B210 only supported in UHD 003.010.001+, windows virtual machine won't work. )
|
||||
* Firmware: IAR EWARM 7.2+ ( commerical toolchain. gcc support work in progress )
|
||||
* FPGA: if you want to recompile fpga logics, install Microsemi Libero SoC 11.3+ ( it's free, see licensing section in https://www.microsemi.com/product-directory/design-resources/1750-libero-soc )
|
||||
* Ground control: Qt 5.2+ ( it's free )
|
||||
* Radio transceiver: Ubuntu with Gnuradio 3.7.10+, UHD 003.010.001+ installed. ( USRP B210 only supported in UHD 003.010.001+, windows virtual machine won't work. )
|
||||
* STLink utility: if using stlink debugger, need this for firmware hex download. ( download link https://www.st.com/en/development-tools/stsw-link004.html )
|
||||
* J-Flash: if using jlink debugger, need this for firmware hex download. ( shipped with your jlink )
|
||||
|
||||
# How to use
|
||||
* work in progress
|
||||
* Preparing - how to load mcu firmware
|
||||
* if build with source, configure debugger in IAR `Project Settings`, then use `Download and debug` button.
|
||||
* if loading prebuilt image, use STLink utility or J-Flash.
|
||||
* Preparing - how to load fpga image
|
||||
* if build with source, use `Program Device` in Libero SoC. ( https://www.eecs.umich.edu/courses/eecs373/labs/LiberoRefGuides/projectflow_SoC.html )
|
||||
* if loading prebuilt image, use FlashPro software, user guide here http://coredocs.s3.amazonaws.com/Libero/11_7_0/Tool/flashpro_ug.pdf
|
||||
* Preparing - how to install gnuradio and usrp driver
|
||||
* if using Ubuntu 18.04, use `sudo apt install gnuradio-dev uhd-host` is the easist way
|
||||
* if using Ubuntu 16.04, compile and install gnuradio from source ( http://github.com/gnuradio/gnuradio ) by yourself, usrp driver must use latest PPA ( https://files.ettus.com/manual/page_install.html )
|
||||
`sudo add-apt-repository ppa:ettusresearch/uhd
|
||||
`sudo apt-get update
|
||||
`sudo apt-get install libuhd-dev libuhd003 uhd-host
|
||||
* other linux distribution not tested, compile on your own is suggested.
|
||||
* Install host software
|
||||
* Install ubuntu linux
|
||||
* Install gnuradio and usrp driver
|
||||
* Build and install libcsp
|
||||
# cd KS-1Q/host/csp
|
||||
# ./build_csp.sh && sudo ./install_csp.sh
|
||||
* Build KS1GCS
|
||||
launch QtCreator, open project KS-1Q/host/KS1GCS/KS1GCS.pro
|
||||
press `Build` button ( the hammer icon near left-bottom )
|
||||
* Load bootloader / firmware
|
||||
* Step 1: Connect KS1 debug tool to KS-1Q
|
||||
* Step 2: Connect stlink or jlink to EPS SWD port
|
||||
* Step 3: Connect li-ion battery charger to CHARGE port
|
||||
* Step 4: Set EPS_RBF switch to `UNLOCK` position
|
||||
* Step 5: Load KS1_EPS_FW03 (firmware) to KS1_EPS module
|
||||
-> if failed, check STM32 on KS1_EPS have power supply
|
||||
-> possible reason: RBF in `LOCK` position or battery rans out.
|
||||
* Step 6: Set TTC_DEBUG_SELECT switch to `JTAG` position
|
||||
* Step 7: Load TTC_V04_FPGA (fpga bitstream) to TTC module
|
||||
-> if failed, check TTC module have power supply.
|
||||
-> possible reason: KS1_EPS no output.
|
||||
-> RBF unlocked ? KS1_EPS firmware loaded ?
|
||||
* Step 8: Set TTC_DEBUG_SELECT switch to `SWD` position
|
||||
* Step 9: Load TTC_V04_FW00 to TTC module
|
||||
-> if failed, check TTC module have power supply.
|
||||
* Step 10: connect USRP to host USB3.0 port
|
||||
* Step 11: Run gnuradio to establish wireless connection to KS-1Q.
|
||||
# cd KS-1Q/host/KS1GCS/
|
||||
# python ccsds-halfduplex-tcpserver2.py
|
||||
to edit flowgraph, run gnuradio-companion and open KS-1Q/host/gr-kcsa-ks1q/examples/ccsds-halfduplex-tcpserver2.grc
|
||||
* Step 12: Run KS1GCS, then click `Connect` button.
|
||||
* Step 13: Send telecommand to enable OBC power. click `EPS` page in KS1GCS, then click `OBC on` button. if success, EPS telemetry PwrOBC will change to nonzero value after ~10seconds.
|
||||
-> Now OBC have power supply
|
||||
* Step 14: Load OBC_2D_FW03 to OBC module.
|
||||
-> if failed, check OBC module have power supply.
|
||||
-> use an external power supply ( equal to battery voltage, 7.2~8.4V ) can power on OBC directly. here step 10 - 13 is not required.
|
||||
|
||||
# TODO list
|
||||
* Move all firmware to gcc toolchain
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
* OBC ( 星载计算机 ) 模块
|
||||
* NI USRP B210 ( 其他的SDR收发机例如LimeSDR也可以使用, 需要进行一些软件修改 )
|
||||
* KS-1Q电缆束
|
||||
* KS1调试工具 ( 包括一个接线板卡, 2个stlink或jlink, 1个flashpro 4 )
|
||||
* KS1_DEBUG_TOOL ( 调试工具, 包括一个接线板卡, 2个stlink或jlink, 1个flashpro4 )
|
||||
* 购买渠道
|
||||
* http://deepace.net
|
||||
* http://kcsa.taobao.com ( 建设中 )
|
||||
|
@ -59,9 +59,59 @@
|
|||
* FPGA: Microsemi Libero SoC 11.3+ ( 免费, 在此处申请license: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc )
|
||||
* 地面控制软件: Qt 5.2以上 ( 免费 )
|
||||
* 软件无线电收发: Ubuntu系统, 安装了Gnuradio 3.7.10+, UHD 003.010.001+ ( 只有UHD 003.010.001以上版本支持USRP B210, 无法使用Windows系统的虚拟机运行. )
|
||||
* STLink utility: ST-Link调试器使用这个软件进行HEX固件下载。 ( 软件下载链接 https://www.st.com/en/development-tools/stsw-link004.html )
|
||||
* J-Flash: JLink调试器使用这个软件进行HEX固件下载 ( JLink购买处附带 )
|
||||
|
||||
# 使用方法
|
||||
* 完善中
|
||||
* 准备工作 - 下载MCU固件
|
||||
* 使用源码编译下载: 在IAR的`Project Settings`菜单, 选择你使用的Debugger, 然后点击`Download and debug`按钮。
|
||||
* 载入预先编译好的固件: 使用STLink utility或者J-Flash.
|
||||
* 准备工作 - 下载FPGA固件
|
||||
* 使用源码编译下载: 使用Libero SoC的`Program Device`功能页面. ( 教程页面 https://www.eecs.umich.edu/courses/eecs373/labs/LiberoRefGuides/projectflow_SoC.html )
|
||||
* 载入预先编译好的固件: 安装FlashPro软件, 使用说明书: http://coredocs.s3.amazonaws.com/Libero/11_7_0/Tool/flashpro_ug.pdf
|
||||
* 准备工作 - 安装Gnuradio和USRP驱动程序
|
||||
* 如果系统是Ubuntu 18.04, 最简单的方法是运行命令`sudo apt install gnuradio-dev uhd-host`
|
||||
* 如果系统是Ubuntu 16.04, 需要从源码编译安装Gnuradio ( 源码链接 http://github.com/gnuradio/gnuradio ), USRP驱动程序使用最新的PPA源安装 ( 教程页面 https://files.ettus.com/manual/page_install.html )
|
||||
`sudo add-apt-repository ppa:ettusresearch/uhd
|
||||
`sudo apt-get update
|
||||
`sudo apt-get install libuhd-dev libuhd003 uhd-host
|
||||
* 其他Linux发行版还没有测试过,推荐的方法是自行从源码编译安装
|
||||
* 安装地面控制软件
|
||||
* 安装Ubuntu系统
|
||||
* 安装安装Gnuradio和USRP驱动程序
|
||||
* 编译安装libcsp
|
||||
# cd KS-1Q/host/csp
|
||||
# ./build_csp.sh && sudo ./install_csp.sh
|
||||
* 安装KS1GCS
|
||||
运行QtCreator, 打开工程文件 KS-1Q/host/KS1GCS/KS1GCS.pro
|
||||
点击`Build` ( 靠近左下角的锤子图标 )
|
||||
* 载入bootloader/固件
|
||||
* 步骤1: 将KS1 Debug Tool连接到KS-1Q
|
||||
* 步骤2: 将STLink或者JLink连接到EPS SWD端口
|
||||
* 步骤3: 将锂电池充电器连接到CHARGE端口
|
||||
* 步骤4: EPS_RBF开关切换到`UNLOCK`
|
||||
* 步骤5: 下载KS1_EPS_FW03固件到KS1_EPS模块
|
||||
-> 如果下载失败,检查KS1_EPS内部的STM32供电是否正常
|
||||
-> 可能的原因: RBF开关设置到`LOCK`位置, KS1_EPS没有安装电池,或者电池已经耗尽。
|
||||
* 步骤6: TTC_DEBUG_SELECT开关切换到`JTAG`位置
|
||||
* 步骤7: 下载TTC_V04_FPGA (FPGA位流) 到TTC模块
|
||||
-> 如果下载失败,检查TTC模块供电是否正常.
|
||||
-> 可能的原因: KS1_EPS没有为TTC模块供电.
|
||||
-> RBF开关设置到`Unlock`位置? KS1_EPS固件已经装载?
|
||||
* 步骤8: TTC_DEBUG_SELECT开关切换到`SWD`位置
|
||||
* 步骤9: 下载TTC_V04_FW00到TTC模块
|
||||
-> 如果下载失败,检查TTC模块供电是否正常.
|
||||
* 步骤10: 将USRP连接到主机的USB3.0端口
|
||||
* 步骤11: 通过Gnuradio与KS-1Q建立测控链路
|
||||
# cd KS-1Q/host/KS1GCS/
|
||||
# python ccsds-halfduplex-tcpserver2.py
|
||||
若要编辑Gnuradio的处理流图, 运行gnuradio-companion命令, 然后打开KS-1Q/host/gr-kcsa-ks1q/examples/ccsds-halfduplex-tcpserver2.grc文件
|
||||
* 步骤12: 运行KS1GCS, 点击`连接`按钮
|
||||
* 步骤13: 发送遥控指令开启OBC电源. 点击KS1GCS的`EPS`页面, 然后点击`OBC开启`按钮. 成功后,EPS遥测量PwrOBC会在大约10秒之后变为一个非零数值
|
||||
-> 现在, OBC电源已经开启
|
||||
* 步骤14: 下载OBC_2D_FW03到OBC模块
|
||||
-> 如果下载失败,检查OBC模块供电是否正常.
|
||||
-> 使用一个外部电源(与电池电压相同, 7.2~8.4V之间)可以直接启动OBC. 这样做可以省去步骤10-13.
|
||||
|
||||
# 待做事项
|
||||
* 所有的固件转移到gcc工具链
|
||||
|
|
Loading…
Reference in New Issue