Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed Teach memory
Revision 4:096b6393659d, committed 2020-04-28
- Comitter:
- MarcelPortmann
- Date:
- Tue Apr 28 13:36:51 2020 +0000
- Parent:
- 3:b22580585b9c
- Commit message:
- sdcvsdvc;
Changed in this revision
--- a/Memory_def.lib Mon Apr 27 05:07:00 2020 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -https://os.mbed.com/teams/Easy-Training/code/Memory_def/#a70b9c34ae10
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Teach.lib Tue Apr 28 13:36:51 2020 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/teams/Easy-Training/code/Teach/#c203f964c949
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/memory.lib Tue Apr 28 13:36:51 2020 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/teams/Easy-Training/code/memory/#85595af0a93b
--- a/teach.cpp Mon Apr 27 05:07:00 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,245 +0,0 @@
-/*
-Hear cold stand a discription
-
-*/
-
-
-#include "teach.h"
-
-
-teach::teach(void) // constructor
-{
-
- lowcount = 0, highcount = 0; //sets startvalue
- data_vec.clear();
-}
-
-void teach::setstart(float posx,float posy,float posz, int time)
-{
- lowcount = 0;
-
- temp.start = true;
- temp.end = false;
- temp.hi = highcount;
- temp.low = lowcount;
- temp.time = time;
- temp.pos[0] = posx;
- temp.pos[1] = posy;
- temp.pos[2] = posz;
- data_vec.push_back(temp);
-
- lowcount++;
- highcount++;
-
- contr_sice();
-}
-
-void teach::setpoint(float posx,float posy,float posz, int time)
-{
- lowcount++;
-
- temp.start = false;
- temp.end = false;
- temp.hi = highcount;
- temp.low = lowcount;
- temp.time = time;
- temp.pos[0] = posx;
- temp.pos[1] = posy;
- temp.pos[2] = posz;
- data_vec.push_back(temp);
-
- contr_sice();
-}
-
-void teach::setend(float posx,float posy,float posz, int time)
-{
- temp.start = false;
- temp.end = true;
- temp.hi = highcount;
- temp.low = lowcount;
- temp.time = time;
- temp.pos[0] = posx;
- temp.pos[1] = posy;
- temp.pos[2] = posz;
- data_vec.push_back(temp);
-
- lowcount = 0;
- highcount++;
-
- contr_sice();
-}
-
-void teach::save(string name)
-{ tr_name = name;
- store.ErstellenDatenblock(tr_name);
- process();
-
-}
-
-void teach::stop(void)
-{
-
-}
-
-void teach::process(void)
-{
- int i=0, k=0, p=0, count=0,forward = 100000, backward = 100000;
- float tempsum[3] = {};
- int max = data_vec.size();
-
- for(i=0; i<=max; i++) { // avrage starting Point
- if(data_vec[i].start) {
- tempsum[0] += data_vec[i].pos[0];
- tempsum[1] += data_vec[i].pos[1];
- tempsum[2] += data_vec[i].pos[2];
- k++;
- }
- }
- tempsum[0] = tempsum[0]/k;
- tempsum[1] = tempsum[1]/k;
- tempsum[2] = tempsum[2]/k;
-
- float empty[3] = {0,0,1}; // status: 000 standart point
- store.SpeichernPosition(tr_name,0,tempsum,empty,empty); // 001 start point
- // 010 end point
-
- i = 0, k = 0, tempsum[0] = 0, tempsum[1] = 0, tempsum[2] = 0; // reset counters
-
- for(i=0; i<=max; i++) { // avrage end Point
- if(data_vec[i].end) {
- tempsum[0] += data_vec[i].pos[0];
- tempsum[1] += data_vec[i].pos[1];
- tempsum[2] += data_vec[i].pos[2];
- k++;
- }
- }
- tempsum[0] = tempsum[0]/k;
- tempsum[1] = tempsum[1]/k;
- tempsum[2] = tempsum[2]/k;
-
- // save endpoint to memory
-
- i = 0, k = 0, tempsum[0] = 0, tempsum[1] = 0, tempsum[2] = 0; // reset counters
-
- for(i=0; i<=max; i++) { // forward point number
-
- while(!data_vec[k].end) {
- count++;
- k++;
- }
-
- if(count<forward) {
- forward = count;
- }
- while(!data_vec[k].start) {
- k++;
- }
- i = k;
- count = 0;
-
- }
-
- k = 0;
- for(i=0; i<=max; i++) { // backward point number
-
- while(!data_vec[k].end) {
- k++;
- }
-
- while(!data_vec[k].start) {
- count++;
- k++;
- }
- if(count<backward) {
- backward = count;
- }
- i = k;
- count = 0;
-
- }
-
- k = 0;
- struct temp_arry forw[forward]; // temp array initialise and zerowing
- for(i=0; i<forward; i++) {
- forw[i].time=0;
- forw[i].pos[0]=0;
- forw[i].pos[1]=0;
- forw[i].pos[2]=0;
- }
-
- for(i=0; i<=max; i++) { // avrage forward points
- for(p=0; p<=forward; p++) {
- forw[p].time += data_vec[k].time;
- forw[p].pos[0] += data_vec[k].pos[0];
- forw[p].pos[1] += data_vec[k].pos[1];
- forw[p].pos[2] += data_vec[k].pos[2];
- k++;
- }
-
- while(!data_vec[k].start) {
- k++;
- }
- i = k;
- count++;
-
- }
- for(i=0; i<=forward; i++) {
- forw[i].time = (forw[i].time)/count;
- forw[i].pos[0] = (forw[i].pos[0])/count;
- forw[i].pos[1] = (forw[i].pos[1])/count;
- forw[i].pos[2] = (forw[i].pos[2])/count;
- }
- count = 0;
- k = 0, i = 0, p = 0; // reset counters
-
- // Save forward way to memory
-
- struct temp_arry backw[backward]; // temp array initialise and zerowing
- for(i=0; i<backward; i++) {
- backw[i].time=0;
- backw[i].pos[0]=0;
- backw[i].pos[1]=0;
- backw[i].pos[2]=0;
- }
-
- for(i=0; i<=max; i++) { // avrage backward points
-
- while(!data_vec[k].end) {
- k++;
- }
-
- for(p=0; p<=backward; p++) {
- backw[p].time += data_vec[k].time;
- backw[p].pos[0] += data_vec[k].pos[0];
- backw[p].pos[1] += data_vec[k].pos[1];
- backw[p].pos[2] += data_vec[k].pos[2];
- k++;
- }
- i = k;
- count++;
- }
-
- for(i=0; i<=backward; i++) {
- backw[i].time = (backw[i].time)/count;
- backw[i].pos[0] = (backw[i].pos[0])/count;
- backw[i].pos[0] = (backw[i].pos[0])/count;
- backw[i].pos[0] = (backw[i].pos[0])/count;
- }
- count = 0;
- k = 0, i = 0, p = 0; // reset counters
-
- // save backward way to memory
-
-}
-
-void teach::temp_store()
-{
-
-}
-
-void teach::contr_sice()
-{
- if((data_vec.size()*sizeof(posdata)) >= MAX_SIZE) {
- // fehlermeldung oder speichern bei zu grossem temp speicher
- }
-}
\ No newline at end of file
--- a/teach.h Mon Apr 27 05:07:00 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,66 +0,0 @@
-/*
-teach function:
-Class to aquier new tranings for the EasyFit Device.
-It Records a position in the 3d room and puts the them in serie to create a "hose" to
-be repeated in the mode Training.
-
-when questions ask someone else
-the autor is not responsible for any spelling mistakes
-
-*/
-#include <vector>
-#include "mbed.h"
-#include "memory.h"
-
-#ifndef teach_H // no idea what this does
-#define teach_H // seems important
-
-#define MAX_SIZE 500000000 // maximal usebal flash befor error
-
-struct posdata{
- int time;
- int hi, low;
- bool end, start;
- float pos[3];
-};
-
-struct temp_arry{
- int time;
- float pos[3];
-};
-
-
-
-class teach
-{
-public:
- teach(void); // Sets all parameters for the class teach constructor
-
-
- //functions to be used outside of class
- void setstart(float posx,float posy,float posz, int time); // creates a temporary begin of line point
- void setpoint(float posx,float posy,float posz, int time); // creates a temporary position point
- void setend(float posx,float posy,float posz, int time); // creates a temporary end of line point
- void save(string name); // wen calld from main stores the whole training in memory
- void stop(void); // deleats all temp data and resets counters/pointers
-
-private:
- std::vector<posdata> data_vec; // Vektor mit allen datenpunkten
- int highcount,lowcount; // Counters for data recording
- void temp_store(void); // Stors data temporary; Data==Pointer to a Data Array (position(x,y,z),time)
- void process(void); // rounds the houses to trainings
- void contr_sice(void); // controlls the sice of temp array
- struct posdata temp; // temporary data storage
- memory store; // store and load data from memory
- string tr_name;
-
- // objekte von display,memory,position // für interaktion mit anderen Klassen
-
-};
-
-#endif
-
-
-
-
-
\ No newline at end of file