Design methodology for data aquisition

anakaine

Member
All,

I'm fairly new to android, though have some experience with VB6 and a little of VB .Net Express (very basic). I'm looking for some ideas from the crowd as to workflows for data capture and storage.

I'm looking to make a field data capture app - where we capture a specified set of variables and a few unspecified ones, store them somehow, and export them as CSV. Internet connections will not always be available.

How would you approach this?


1. Data input screens

|

2. Capture data. Each Value is brought in via tapping from a choice of buttons (dirty fingers on tablets in field - easy input) - each set of screens produces a line of data looking something like:
NAME, Number, Number, Value, Value, Value, Value, Value, Value, Value

EG (CQ3502, 15.65, 15.82, ST, C,,G,SY,TO,,,C3,R5)
|

3. Each NAME may be replicated hundreds of times sequentially, as dictated by the first and second values - with the rest varying

|

4. Store the data locally (Can we use a database that doesn't require internet access?)

|

5. Export the data by name to a csv in a predefined format. This is critical to integrate with existing systems.



How would you approach it?

I've got the interface in mind - just not how I would get from a number of buttons to a CSV. How would you approach securely storing the data against corruption locally?

All thoughts much appreciated!

Kind Regards,
Simon
 

KitCarlson

Active Member
Licensed User
Longtime User
I have done a data logger as part of an embedded system automotive ignition controller. I easily converted from a PC, VB6, RS232, 38, 400 baud, GUI, to B4A, using Bluetooth at 115, 200 baud. I log about 10 variables at rates to 100mS to sdCard, in csv format for use with Excel or other software. At 50mS there is inaccurate response in timings. The application sends data request based on timer interval, the embedded system replies with data in text string. I am very pleased with B4A.
 
Last edited:
Upvote 0

anakaine

Member
Thanks very much for the reply Kit.

Though timed logging is probably a bit beyond the scope of what I was hoping to achieve.

Do you write directly from input to the CSV, or do you make use of an intermediary database?
 
Upvote 0

KitCarlson

Active Member
Licensed User
Longtime User
I just write received string to file with periodic date-time stamp. I also send to chart recorder for short term viewing. There is a short header that identifies it as log data, and a command processor that handles the various received strings. There are other things happening, real time setups, meters, and dynamic charts. For GUI activities, regex is used to split the text to numbers.

My app does not require DB, but as time permits I will add analysis features.
 
Upvote 0
Top