Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
R
redpitaya-MCPHA
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Günter Quast
redpitaya-MCPHA
Commits
84907f1d
Commit
84907f1d
authored
9 months ago
by
Günter Quast
Browse files
Options
Downloads
Patches
Plain Diff
more complete docu
parent
e2286a67
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
README.md
+28
-21
28 additions, 21 deletions
README.md
with
28 additions
and
21 deletions
README.md
+
28
−
21
View file @
84907f1d
...
...
@@ -7,7 +7,7 @@ for physics laboratory courses
The RedPitaya is a small, credit-card sized single board computer with a dual-core ARM Cortex-A processor
and a XILINX Zynq 7010 FPGA. The board contains two fast ADCs and two DACs with 14 bit resolution running
at a sampling frequency of 125 MHz. Extension connector provide general purpose IO pins with
at a sampling frequency of 125 MHz. Extension connector
s
provide general purpose IO pins with
slow analog inputs and outputs and support for serial bus interfaces like I²C, SPI and UART.
The system runs under Ubuntu Linux, which provides network access and supports a wide range of
applications running on the board.
...
...
@@ -22,13 +22,14 @@ well as an oscilloscope application capable of transferring large data reates re
limit of the 1Gb port. The package consists of an FPGA image and a server process running on the
RedPitaya board. A client script controls the server and pulls the data to the client computer.
This package extends the original one by a possibity to record or export waveform data and
provides helper scripts to analyze recorde
s
spectra or to read exported waveform data. An
This package extends the original one by a possibi
li
ty to record or export waveform data and
provides helper scripts to analyze recorde
d
spectra or to read exported waveform data. An
interface to the buffer manager
*mimoCoRB*
for buffering and parallel processing of large
date volumes is also provided.
This package is in use for spectrography experiments in physics laboratory courses at the
faculty of physics at Karlsruhe Institute of Technology.
This package is in use for gamma-ray spectrography experiments in physics laboratory courses at
the faculty of physics at Karlsruhe Institute of Technology.
### Files:
...
...
@@ -59,7 +60,8 @@ faculty of physics at Karlsruhe Institute of Technology.
*mcpha.py*
is a fork of the sub-directory
*projects/mcpha*
in a project by
Pavel Demin,
[
red-pitaya-notes
](
https://pavel-demin.github.io/red-pitaya-notes
)
,
*redPaq.py*
represents an extension of the oscilloscope class enabling fast restart and data export.
*redPaq.py*
represents an extension of the oscilloscope class enabling fast restart
and data export.
## Multi-Channel Pulse-Height Analyzer for the RedPitaya FPGA board
...
...
@@ -108,7 +110,7 @@ of the *matplotlib*window to mark regions to zoom in for a detailed inspection o
## Oscilloscope and data recorder
The script
*redPda
a
q.py*
relies on the same server and FPGA image as the pulse-height analyzer,
The script
*redPdaq.py*
relies on the same server and FPGA image as the pulse-height analyzer,
providing the same functionality as
*mcpha.py*
. In addition, however, there is a button
"
*Start DAQ*
" in the oscilloscope tab to run the oscilloscope in data acquisition mode,
i.e. continuously. A subset of the data is shown in the oscilloscope display, together with
...
...
@@ -126,7 +128,7 @@ An examples of call-back functions callable from within redPdaq is provided with
*redP_mimocorb.py*
is script called as sub-process within the
*mimiCoRB*
frame-work
for more advanced data analysis tasks requiring multiple processes running in parallel.
A
*mimoCoRB*
setup-file is also provided and can be started by
*./run_daq setup.yaml*
;
modules and configuration files for a pulse-height analysis of
t
ecorded signals are
modules and configuration files for a pulse-height analysis of
r
ecorded signals are
contained in the subdirectories
*modules/*
and
*config/*
, respectively.
...
...
@@ -135,8 +137,8 @@ contained in the subdirectories *modules/* and *config/*, respectively.
The sub-directory
*RP-image*
contains files to be transferred to a SD card for the RedPitaya board.
Proceed as follows:
-
copy the contents of the directory
*RP-image*
to an empty SD card formatted as VFAT32
.
-
connect the RedPitaya to the network via the LAN port
-
copy the contents of the directory
*RP-image*
to an empty SD card formatted as VFAT32
;
-
connect the RedPitaya to the network via the LAN port
;
-
insert the SD card in the RedPitaya and connect the power.
The RepPitaya directly starts the
*mcpha*
server application, requests an IP address via DHCP
...
...
@@ -144,9 +146,9 @@ and waits for the client program to connect via network.
On the client computer, download the client software:
-
clone the
*mcpha*
repository via
`git clone https://gitlab.kit.edu/guenter.quast/redpitaya-mcpha`
-
change directory to the installation directory and start the graphical interface of the
client
software via
`python3 mcpha.py`
on the command line.
-
clone the
*
redpitaya-
mcpha*
repository via
`git clone https://gitlab.kit.edu/guenter.quast/redpitaya-mcpha`
;
-
change directory to the installation directory and start the graphical interface of the
desired Python
client script
on the command line.
The application programs
*mcpha.py*
or
*redPdaq.py*
take care of initializing the processes on the
RedPitaya board through the server process, initiate data transfers from the RedPitaya board to
...
...
@@ -174,21 +176,24 @@ and the server process on the RedPitaya board.
Then, on the client side:
-
start the client program
via
`python3 mcpha.py`
-
start the client program
from within a terminal via
`python3 mcpha.py`
or
`python3 redPdaq.py`
;
-
in the graphical interface, enter the network address of the RedPitaya in the
field next to the orange button and click
*connect*
;
watch out for connection errors in the
*Messages*
tab!
The message "
*IO started*
" is displayed if everything is ok, and the address turns green
.
The message "
*IO started*
" is displayed if everything is ok, and the address turns green
;
-
click the
*oscilloscope*
tab, check the trigger level and then start the oscilloscope
to see whether signals are arriving at one or both of the RedPitaya inputs
.
A
djust the
*decimation factor*
in the top-right corner of the main display to ensure
to see whether signals are arriving at one or both of the RedPitaya inputs
;
a
djust the
*decimation factor*
in the top-right corner of the main display to ensure
that the sampling rate is high enough for about 50 samples over the pulse duration.
-
if no signal source is available, you may click the
*generator*
tab, set the desired
signal parameters and start the generator; connect
*out1*
of the RedPitaya to
the
input
*in1*
with a (short) cable and then check for the presence of signals in
the
*oscilloscpe*
tab
.
signal parameters and start the generator; connect
*out1*
of the RedPitaya to
one of
rhe
input
s
with a (short) cable and then check for the presence of signals in
the
*oscilloscpe*
tab
;
-
now click the tab
*spectrum histogram 1*
; adjust the amplitude threshold and time
of exposure, then click the
*Start*
button and watch the spectrum building up.
of exposure, then click the
*Start*
button and watch the spectrum building up;
-
if running
`redPdaq.py`
, threre is a buttton "StartDQQ"; click it to cintinuously transfer
waveform data to the client computer. If a filename was specified, data is recorded to disk
in
*.npy*
format; note that any active spectrum rab is put in paused mode if DAQ is active.
-
when finished, use the
*Save*
button to save the spectrum to a file with a
meaningful name.
...
...
@@ -215,6 +220,8 @@ Note that presently mcpha.py exports data in human-readable format using
> *read_osc.py* demonstrates how to read and plot waveform data exported from the
oscilloscope tab of mcpha.py.
> *read_npy.py* illustrates how to read waveform recorded by `redPdaq.py`.
## Examples
The directory
*examples/*
contains some spectra recorded with
*mchph.py*
and the Python
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment