Code Monkey home page Code Monkey logo

skyetracker's People

Contributors

graham22 avatar thijstriemstra avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

skyetracker's Issues

anemometer sensorVoltage calculation

What are these values in code/ESP32/SkyeTracker/src/Anemometer.cpp

double sensorVoltage = -0.000000000000016 * pow(reading, 4) + 0.000000000118171 * pow(reading, 3) - 0.000000301211691 * pow(reading, 2) + 0.001109019271794 * reading + 0.034143524634089;

can you add some code comments for this? do these constants change when using a different anemometer?

ESP32 Wifi connection

I can see a new protected SkyeTracker wifi access point after booting the ESP32, but what is the user/password? Where is this defined?

Assembly files not available

Hi.
Thanks for your great project.

I cannot find the full mechanical assembly of the tracker. Is it available for download?

Cheers,
Mateusz

Can you describe the pinout? What are these pins used for?

Hello, please describe the pinout of these pins. What is connected for what and how...
Did I understand this limit switches correctly?

Anemometer Signal GPIO34
Motor Controller - Enable1 GPIO12
Motor Controller - IN1 GPIO13
Motor Controller - IN2 GPIO14
Motor Controller - Enable2 GPIO26
Motor Controller - IN3 GPIO27
Motor Controller - IN4 GPIO25

Changes dissappeared

Some of my pull requests were reverted in last 24 hours (#20, #24). Should I continue supplying pull requests or?

Checking for movements

Hi, I downloaded your project and I must say it is fantastic. I don't have all the materials you used, for example I don't have linear motors but I simulated the outputs by connecting LEDs to see how it behaves.
I noticed that after some time the program sends the movements.
The questions are:
How long does it take between chasing?
Which sensors are needed to know the status of the trak?

The last question is for a safety issue, putting the case of not using linear motors but simply normal 24V dc gearmotors.
How do I know how the traker is moving and where it got there?

Another question, is it possible to remove the configuration via the Android App and simply use the Arduino Sketch ??
This question is why I don't know Android Studio and I don't need to enter the coordinates by phone, I already know the coordinates.
The problem of manual movement will always remain if I do not have the Android App, but I will try to move it through external selectors.
My intent is to test your project on an existing photovoltaic system where 158 Traker columns with a 30-panel sail are currently installed.
Currently the trakers have their controller that makes the motors move and through two sensors (10K potentiometer for azimuth and 2-axis sensor for elevation) it controls the movement in the right direction. If I can, I attach the photo of the system.

Dome Central

Thanks

Fabio

Code

I cannot find the code.

Using bigger motor controller

The actuators I'm using need 3A each (at peak) and we decided to use 2 BTS7960 motor controllers.

There is a https://github.com/eicke123/BTS7960Library Arduino library for BTS7960 that seems to do the same. Any ideas on how to extend the LinearActuatorNoPot class? Could you add an interface that can be extended (I'm new to C++) with different types of Actuator implementations?

Loosing settings

Hi, great work. I have a problem with my installation, if the esp32 is loosing power the settings are also lost. Thats an issue in a remote area with no constant power. Is there a way to make the settings permanent in the code like those for wifi?

adding a "skew" setting?

Hey...

I'm hoping to find a tracking program for my tip and roll array collector. The extra tricky bit is that my collector is made of a group of tubes that contain optics that need two axis tracking (so far so good) But the tubes are anchored at the foot and turn on the central axis for east west and so tip up and down at the top for north south. The hard bit is installation of the array can be along non east west lines (in the graphic that is the foot line) so there needs to be compensating math for the difference... any ideas about how to implement those "corrections" in the code?
screen shot 2016-11-14 at 6 39 06 pm

inches vs mm

We use millimeters here in Holland, I see you used inches. Any idea how to support both?

Compiling the Android app

I installed Android Studio and imported the Android project. It was complaining about an old version of Gradle so it updated this. Now it's complaining about this section of build.gradle:

signingConfigs {
        release {
            storeFile file(System.getenv("KEYSTORE"))
            storePassword System.getenv("KEYSTORE_PASSWORD")
            keyAlias System.getenv("KEY_ALIAS")
            keyPassword System.getenv("KEY_PASSWORD")
        }
    }

with this error:

18:39	Gradle sync failed: Cause: path may not be null or empty string. path='null'

@graham22 do I need to create a file?

End Switch

it is possible to integrate limit switches. For example, I can't get all the way to the east.

Move Anemometer to separate library

I'd like to use the Anemometer class in other non-SkyeTracker projects as well. Can it be moved to a separate repository/project so it can be used by other Arduino projects? Feel free to add me as a team member, I can help out with this.

Movement and communication problems

Good evening,
I tried the project on Arduino UNO with HC-06 module, DS1307, L298N and 2 5 volt motors.
I have modified the SoftwareSerial with pins 8, 9 in the SkyeTracker.ino file and through a software installed on an Android phone I receive the data from the module.
Starting Arduino I receive the following messages from the HC-06:
RAM in Run: 358
RAM At start of setup: 801
2020/4/7 16:50:11
Loading Configuration
Initializing tracker
RAM Completing setup:
801
TrackToSun (I get this often if I keep it on)

By switching to the SkyeTraker app, however, I do not receive anything on the INFO page and even going to change the LIMITS, LOCATION, DATE / TIME parameters, nothing happens on the Arduino.
By manually trying from MOVE nothing happens.

But when Arduino starts, the motors turn first in one direction and then the other, after starting on the serial I read the change data but the motors no longer move.

That it is a problem of L298N is to be excluded because I tried a program to make them move and they do it safely.
I don't understand why the startup works and then nothing moves.

The biggest problem is understanding why I can't communicate with Arduino from the App, I installed it on Android 10, Android 8 and even Android 4.4

No data in all 3 devices

Regards

Fabio

Can't Build Firmware

Hey i tried changing AnemometerVoltageMin and Max Settings to another Value and build the Firmware but i get the Error that SPI.h is missing:

Processing uno (board: nanoatmega328; platform: atmelavr; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Removing unused dependencies...
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/atmelavr/nanoatmega328.html
PLATFORM: Atmel AVR (5.0.0) > Arduino Nano ATmega328
HARDWARE: ATMEGA328P 16MHz, 2KB RAM, 30KB Flash
DEBUG: Current (avr-stub) External (avr-stub, simavr)
PACKAGES: 
 - framework-arduino-avr @ 5.2.0 
 - toolchain-atmelavr @ 1.70300.191015 (7.3.0)
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 10 compatible libraries
Scanning dependencies...
Dependency Graph
|-- ArduinoJson @ 7.0.4
|-- RTClib @ 2.1.4
|-- ArduinoThread @ 2.1.1
|-- Wire @ 1.0
|-- SoftwareSerial @ 1.0
Building in release mode
Compiling .pio\build\uno\src\Anemometer.cpp.o
Compiling .pio\build\uno\src\Configuration.cpp.o
Compiling .pio\build\uno\src\LinearActuatorNoPot.cpp.o
Compiling .pio\build\uno\src\Sun.cpp.o
Compiling .pio\build\uno\src\Tracker.cpp.o
Compiling .pio\build\uno\src\main.cpp.o
Compiling .pio\build\uno\liba7d\Wire\Wire.cpp.o
Compiling .pio\build\uno\liba7d\Wire\utility\twi.c.o
Compiling .pio\build\uno\lib460\Adafruit BusIO\Adafruit_BusIO_Register.cpp.o
Compiling .pio\build\uno\lib460\Adafruit BusIO\Adafruit_I2CDevice.cpp.o
Compiling .pio\build\uno\lib460\Adafruit BusIO\Adafruit_SPIDevice.cpp.o
Compiling .pio\build\uno\lib1f0\RTClib\RTC_DS1307.cpp.o
Compiling .pio\build\uno\lib1f0\RTClib\RTC_DS3231.cpp.o
Compiling .pio\build\uno\lib1f0\RTClib\RTC_Micros.cpp.o
Compiling .pio\build\uno\lib1f0\RTClib\RTC_Millis.cpp.o
Compiling .pio\build\uno\lib1f0\RTClib\RTC_PCF8523.cpp.o
In file included from .pio\libdeps\uno\Adafruit BusIO/Adafruit_BusIO_Register.h:10:0,
                 from .pio\libdeps\uno\Adafruit BusIO\Adafruit_BusIO_Register.cpp:1:
.pio\libdeps\uno\Adafruit BusIO/Adafruit_SPIDevice.h:9:10: fatal error: SPI.h: No such file or directory

*************************************************************
* Looking for SPI.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:SPI.h"
* Web  > https://registry.platformio.org/search?q=header:SPI.h
*
*************************************************************

 #include <SPI.h>
          ^~~~~~~
compilation terminated.
In file included from .pio\libdeps\uno\Adafruit BusIO\Adafruit_SPIDevice.cpp:1:0:
.pio\libdeps\uno\Adafruit BusIO\Adafruit_SPIDevice.h:9:10: fatal error: SPI.h: No such file or directory

*************************************************************
* Looking for SPI.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:SPI.h"
* Web  > https://registry.platformio.org/search?q=header:SPI.h
*
*************************************************************

 #include <SPI.h>
          ^~~~~~~
compilation terminated.
*** [.pio\build\uno\lib460\Adafruit BusIO\Adafruit_BusIO_Register.cpp.o] Error 1
*** [.pio\build\uno\lib460\Adafruit BusIO\Adafruit_SPIDevice.cpp.o] Error 1
src\Tracker.cpp: In member function 'void SkyeTracker::Tracker::ProcessCommand(const char*)':
src\Tracker.cpp:241:3: warning: 'template<unsigned int N> class ArduinoJson::V704L1::StaticJsonDocument' is deprecated [-Wdeprecated-declarations]
   StaticJsonDocument<256> root;
   ^~~~~~~~~~~~~~~~~~
In file included from .pio\libdeps\uno\ArduinoJson\src/ArduinoJson.hpp:53:0,
                 from .pio\libdeps\uno\ArduinoJson\src/ArduinoJson.h:9,
                 from include/Tracker.h:3,
                 from src\Tracker.cpp:1:
.pio\libdeps\uno\ArduinoJson\src/ArduinoJson/compatibility.hpp:63:58: note: declared here
 class ARDUINOJSON_DEPRECATED("use JsonDocument instead") StaticJsonDocument
                                                          ^~~~~~~~~~~~~~~~~~
=========================================================================================== [FAILED] Took 1.58 seconds ===========================================================================================

But when i add SPI as a dependency in the platformio.ini i get the following error:

Processing uno (board: nanoatmega328; platform: atmelavr; framework: arduino)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/atmelavr/nanoatmega328.html
PLATFORM: Atmel AVR (5.0.0) > Arduino Nano ATmega328
HARDWARE: ATMEGA328P 16MHz, 2KB RAM, 30KB Flash
DEBUG: Current (avr-stub) External (avr-stub, simavr)
PACKAGES: 
 - framework-arduino-avr @ 5.2.0 
 - toolchain-atmelavr @ 1.70300.191015 (7.3.0)
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 10 compatible libraries
Scanning dependencies...
Dependency Graph
|-- ArduinoJson @ 7.0.4
|-- RTClib @ 2.1.4
|-- ArduinoThread @ 2.1.1
|-- Wire @ 1.0
|-- SoftwareSerial @ 1.0
|-- SPI @ 1.0
Building in release mode
Checking size .pio\build\uno\firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [=====Error: The program size (31316 bytes) is greater than maximum allowed (30720 bytes)
   *** [checkprogsize] Explicit exit, status 1
  ]  53.1% (used 1087 bytes from 2048 bytes)
Flash: [==========]  101.9% (used 31316 bytes from 30720 bytes)

i was wondering if i miss something

Android APP - Longitude / Latitude wrong

I cant upload the correct GPS information. They are extremly wrong, in a other App the GPS works correctly.
My way was to set it manually at:

Configuration.h
Line 59 - double getLat() { return 47.xxx628; }
Line 60 - double getLon() { return 9.xxx297; }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.