This scenario demonstrates imaging a target on the surface of the Earth based on access and attitude error requirements. Simulated data generated from this image is stored in an on-board storage device and then downlinked to a ground station.

The script is found in the folder basilisk/examples and executed by using:


The simulation uses Module: groundLocation to create an output message with the desired ground target’s inertial position. This is fed to the 2D pointing module Module: locationPointing which directs the 3rd body axis to point towards the target. Once the target is accessible per the Module: groundLocation class’ accessOutMsg and below the prescribed attitude error from the Module: locationPointing class’ attGuidOutMsg, the Module: simpleInstrumentController sends a deviceStatusOutMsg to the Module: simpleInstrument to turn the imager on for a single time step. The Module: simpleInstrument sends this data to a Module: partitionedStorageUnit. The data is then downlinked using a Module: spaceToGroundTransmitter once a ground station represented by another Module: groundLocation class is accessible.

A reset of the Module: groundLocation and Module: simpleInstrumentController for the purposes of switching to a new target after the first one is imaged is also demonstrated.

Illustration of Simulation Results

show_plots = True

The following plots illustrate the 2D pointing error, access data, image commands, and level of the storage unit.

scenarioGroundLocationImaging.plot_attitude_error(timeLineSet, dataSigmaBR)[source]

Plot the attitude result.[source]

The scenarios can be run with the followings setups parameters:


show_plots (bool) – Determines if the script should display plots