Skip to main content

Python API for the SACADA data acquisition system

Project description

sacada-python

A biblioteca em Python do SACADA permite que sejam desenvolvidas aplicações científicas de maneira amigável e abstraída.


Instalação

A biblioteca, junto com o comando sacada pode ser instalada globalmente com o comando

sudo pip3 install -U sacada-python

Caso deseje instalar apenas localmente, ou se não tiver acesso ao sudo, instale utilizando

pip3 install --user -U sacada-python

Tome cuidado que, neste caso, o comando sacada ficará disponível apenas em ~/.local/bin, que deverá estar no seu PATH.


Uso

Biblioteca

[TODO] Escrever códigos de exemplo.

from sacada import SACADA

s = SACADA("/dev/ttyACM0")

# Imprime a tensão do canal A0 na tela
print(s.readVoltage("A0"))

Comando

O comando sacada permite a interface com a placa via terminal. Ele faz uso de uma interface serial, então é importante que você tenha as permissões corretas para acesso. Caso você esteja tendo erros de permissão, tente se colocar no grupo dialout utilizando o comando sudo usermod -aG dialout [seu usuario] e relogue no seu computador.

Para testar a comunicação, você pode utilizar o comando sacada show, que deve retornar a string de identificação da placa que você está utilizando. Para especificar uma porta, você pode utilizar o parâmetro --port [sua porta]. Por padrão, a porta utilizada é a /dev/ttyACM0. É importante frisar que a SACADA possui duas portas seriais, e que a utilizada para comunicação é sempre a de número menor.

Exemplos:

[tropos@cta-001 ~]$ sacada show
blazing.design/UFRGS,SACADA Mini,0,rev1
[tropos@cta-001 ~]$ sacada --port /dev/ttyACM123 show
blazing.design/UFRGS,SACADA Mini,0,rev1

O parâmetro --port deve ser sempre o primeiro do comando

Para medir um canal único, você pode utilizar o comando read:

Exemplo:

[tropos@cta-001 ~]$ sacada read A0
3.29312515258789

Caso você deseje monitorar um canal continuamente, pode utilizar o comando monitor. Você também pode especificar um arquivo para salvar os dados utilizando o parâmetro --save. O intervalo de amostragem pode ser especificado (em milisegundos) com o parâmetro --interval.

Exemplos:

# Monitora o canal A0 com o intervalo padrão de 1000ms

[tropos@cta-001 ~]$ sacada monitor A0
3.29312515258789
3.29187512397766
3.29175019264221
...
# Monitora o canal A0 com intervalo de 100ms

[tropos@cta-001 ~]$ sacada monitor A0 --interval 100
3.29287505149841
3.28575015068054
3.28275012969971
...
# Salva no arquivo ~/logs/out.log as amostras lidas

[tropos@cta-001 ~]$ sacada monitor A0 --save ~/logs/out.log
3.29275012016296
3.29187512397766
3.29212522506714
...

Os valores lidos e monitorados sempre serão dados em Volts


Licença

Este programa é um software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença Pública Geral GNU como publicada pela Free Software Foundation; na versão 3 da Licença, ou (a seu critério) qualquer versão posterior.

Este programa é distribuído na esperança de que possa ser útil, mas SEM NENHUMA GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para mais detalhes.

Uma cópia da licença (em inglês) está disponível no arquivo LICENSE.


This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

A copy of this license is provided in the LICENSE file.


Copyright 2019 Pedro Henrique Capp Kopper.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sacada-python-0.0.7.tar.gz (4.9 kB view hashes)

Uploaded source

Built Distribution

sacada_python-0.0.7-py3-none-any.whl (17.5 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page