#include <WiFi.h>
#include <ESP32Servo.h>
Servo MyServo;
static const int servoPin = 18;/*Connect the servo motor to GPIO18*/
int emg_data[] = {0.652007, 0.779388, 0.512074, 0.0103302, 0.578771,
1.10744, 1.31852, 1.12337, 0.730854, 0.357775, 0.277767, 0.151554,
0.338471, 0.475014, 0.427563, 0.764255, 0.814798, 0.461761, 0.106476,
0.330886, 0.744347, 0.823698, 0.396422, 0.315829, 0.641373, 0.233675,
0.137787, 0.0766427, 0.255418, 0.23084, 0.275975, 0.238133, 0.14293,
0.101496, 0.0299779, 0.138877, 0.387568, 0.56184, 0.556509, 0.464299,
0.37362, 0.259201, 0.1194, 0.00822057, 0.092217, 0.0787242, 0.0505565,
0.179172, 0.359139, 0.326093, 0.135971, 0.0704434, 0.126009, 0.123893,
0.0974535, 0.108127, 0.109736, 0.1091, 0.0985622,0.0242222,0.00462619,
0.151675, 0.164457, 0.19272, 0.595695, 0.70496, 0.52704, 0.273793,
0.153067, 0.0742748, 0.111478, 0.240135, 0.197397, 0.0883109, 0.026848,
0.160064, 0.301351, 0.494426, 0.958342, 0.533133, 0.9008, 1.51608,
1.27208, 1.07325, 0.777715, 0.339567, 0.0411693, 0.30519, 0.49697,
0.653248, 0.752213, 0.790768, 0.746276, 0.618028, 0.463633, 0.300773,
0.0902651, 0.10074, 0.190252, 0.226484, 0.204664, 0.145608, 0.150367,
0.160165, 0.111305, 0.0500735, 0.0226258,0.00420997,0.199528,0.355957,
0.273281, 0.119834, 0.0430605, 0.00564561, 0.0365762, 0.0516984,
0.113123, 0.190543, 0.237455, 0.266178, 0.208545,0.0577885,0.0331728,
0.0470521, 0.0910192, 0.11864, 0.0833024, 0.0893866,0.141341,0.140697,
0.109032, 0.0763985, 0.0153006, 0.0506604, 0.13175, 0.25808, 0.385641,
0.378215, 0.0658124, 0.397933, 0.596226, 0.50203, 0.436105, 0.39278,
0.128495, 0.281435, 0.558224, 0.427324, 0.0698501,0.249535,0.0997547,
0.240389, 0.0496927, 0.264605, 0.139755, 0.111866,0.0973308,0.108568,
0.128649, 0.0364812, 0.020586, 0.128383, 0.241639, 0.301112, 0.305471,
0.250947, 0.260618, 0.298278, 0.146848, 0.0623482, 0.0944821, 0.14712,
0.356612, 0.42893, 0.298392, 0.171585, 0.0449218, 0.0115984, 0.0849878,
0.151882, 0.0245643, 0.138452, 0.09737, 0.210998, 0.338483, 0.172243,
0.506231, 0.215445, 0.0585529, 0.0527498, 0.247096, 0.325984, 0.352876,
0.394316, 0.486797, 0.294579, 0.0165979, 0.0904153, 0.21756, 0.235567,
0.325386, 0.182715, 0.0936606, 0.420754, 0.918579, 1.18716, 1.026,
0.703452, 0.30094, 0.0736327, 0.203167, 0.179041, 0.219096, 0.419748,
0.747793, 0.938362, 0.821488, 0.658494, 0.572407, 0.241303, 0.329827,
0.683291, 0.703, 0.557001, 0.298288, 0.0756106, 0.00950896, 0.118871,
0.30331, 0.445504, 0.462768, 0.21303, 0.288503, 0.628167, 0.480993,
0.146366, 0.0903178, 0.105037, 0.0885573, 0.212416, 0.267281, 0.371667,
0.355815, 0.420395, 0.600176, 0.370665, 0.219465, 0.620809, 0.818957,
0.967127, 0.829742, 0.360598, 0.10653, 0.346356, 0.332681, 0.224058,
0.214968, 0.197228, 0.0396516, 0.0768343, 0.00529346, 0.134483,
0.127758, 0.0607398, 0.0799906, 0.202517, 0.330184, 0.326417, 0.212283,
0.123867, 0.0862998, 0.0439308, 0.0457575, 0.147484,0.168869,0.164011,
0.246368, 0.299332, 0.199025, 0.0710577,0.000463923,0.04512,0.0250994,
0.00485263, 0.0551856, 0.080089, 0.0325723, 0.105215, 0.069189,
0.0834941, 0.0211177, 0.253248, 0.428064, 0.414011,0.220569,0.386617,
0.934422, 0.845319, 0.529387, 0.346495, 0.169885, 0.00325208, 0.17074,
0.401114, 0.541108, 0.407213, 0.163633, 0.0167903,0.0402435,0.0329589,
0.211842, 0.317875, 0.305255, 0.165485, 0.0938562, 0.239866, 0.172558,
0.0969042, 0.0542885, 0.113481, 0.311406,0.265698,0.0444618,0.0940112,
0.145533, 0.18993, 0.217725, 0.220719, 0.208911, 0.184068, 0.109245,
0.0544109, 0.215382, 0.159243, 0.104812, 0.254013,0.138545,0.0715926,
0.220352, 0.249497, 0.17912, 0.139447, 0.0840131,0.0779799,0.0267489,
0.244752, 0.218586, 0.0260647, 0.115, 0.252609, 0.183444, 0.0508092,
0.0959199, 0.133697, 0.0702847, 0.227413, 0.166396, 0.046311,0.101319,
0.257341, 0.348687, 0.400053, 0.394921, 0.275996,0.110916,0.000828014,
0.0753751, 0.122422, 0.124846, 0.144676, 0.22403, 0.404999, 0.684,
0.831028, 0.705265, 0.476806, 0.255913, 0.0175444, 0.306359, 0.51664,
0.654607, 0.737935, 0.788964, 0.806034, 0.634028, 0.252466, 0.0369635,
0.142037, 0.149995, 0.064103, 0.144992, 0.245132, 0.0849665, 0.23406,
0.546857, 0.330991, 0.0763316, 0.179863, 0.234124, 0.144737, 0.128577,
0.189405, 0.206053, 0.146555, 0.0929712, 0.0128917, 0.223495, 0.105872,
0.0535418, 0.673824, 0.704164, 0.0506063, 0.0576316, 0.184431, 0.0203582,
0.0697591, 0.0686121, 0.206687, 0.151668, 0.12565, 0.493984, 0.69086,
0.614221, 0.402058, 0.117981, 0.200906, 0.405163, 0.498995, 0.609339,
0.636103, 0.479362, 0.324461, 0.208392, 0.043087, 0.318817, 0.454291,
0.50742, 0.472775, 0.352196, 0.187752, 0.053065, 0.254924, 0.36608,
0.481281, 0.54131, 0.682859, 0.692274, 0.0546596, 0.578592, 0.698524,
0.718381, 0.541414, 0.164011, 0.0979923, 0.296462, 0.473991, 0.586738,
0.663024, 0.756166, 0.759979, 0.433382, 0.0823081, 0.37235, 0.35061,
0.207669, 0.102577, 0.117059, 0.176889, 0.0454399, 0.320508, 0.632705,
0.658078, 0.474999, 0.247178, 0.08453, 0.502544, 0.686134, 0.638552,
0.703941, 0.811546, 0.646647, 0.241612, 0.157257, 0.383003, 0.439654,
0.469012, 0.497135, 0.475324, 0.453613, 0.289367, 0.11482, 0.315402,
0.0923505, 0.134294, 0.152314, 0.080962, 0.0711177, 0.374657,
0.654011, 0.504288, 0.0677103, 0.125621, 0.123743, 0.20436, 0.33344,
0.395775, 0.36978, 0.307304, 0.211208, 0.0472231, 0.159854, 0.276927,
0.178174, 0.0622495, 0.261235, 0.158466, 0.25473, 0.501138, 0.457044,
0.422076, 0.384279, 0.318797, 0.272724, 0.0688173, 0.28302, 0.5606,
0.659766, 0.581532, 0.496335, 0.462492, 0.239645, 0.219549, 0.689691,
0.881833, 0.659159, 0.356049, 0.263716, 0.11052, 0.248969, 0.451951,
0.349422, 0.207095, 0.127777, 0.0379258, 0.00457435, 0.0561293,
0.138595, 0.21435, 0.36402, 0.457393, 0.378435, 0.285343, 0.00682665, 0.532285, 0.722615, 0.616989, 0.571717, 0.410941, 0.153551, 0.0104601, 0.119281, 0.227974, 0.193781, 0.170574, 0.224996, 0.229882, 0.199745, 0.160901, 0.115022, 0.129726, 0.203055, 0.252884, 0.237332, 0.225181, 0.251288, 0.311734, 0.436315, 0.21636, 0.660282, 1.33408, 1.05373, 0.42359, 0.202043, 0.278435, 0.219716, 0.0364697, 0.342292, 0.551326, 0.497604, 0.265333, 0.113969, 0.11119, 0.153258, 0.136514, 0.100744, 0.106823, 0.0603579, 0.0179745, 0.0383325, 0.113306, 0.195725, 0.112963, 0.0152492, 0.132456, 0.34521, 0.0697252, 0.390162, 0.205922, 0.210833, 0.309339, 0.237815, 0.108055, 0.045494, 0.148409, 0.158205, 0.0423484, 0.200463, 0.385238, 0.325495, 0.189241, 0.113198, 0.0542313, 0.281732, 0.361158, 0.31016, 0.270407, 0.206423, 0.0204957, 0.196661, 0.368911, 0.52052, 0.533802, 0.35321, 0.122028, 0.0706852, 0.133173, 0.00844591, 0.197611, 0.211592, 0.0527107, 0.458329, 0.685902, 0.700686, 0.669081, 0.592053, 0.479642, 0.307737, 0.0179725, 0.397269, 0.635992, 0.609836, 0.400651, 0.25157, 0.223474, 0.18782, 0.0790068, 0.117361, 0.194488, 0.139436, 0.420503, 0.243988, 0.0713566, 0.0812397, 0.356102, 0.497054, 0.366853, 0.076541, 0.140814, 0.173367, 0.119277, 0.0837003, 0.0612016, 0.0619001, 0.119201, 0.181213, 0.100034, 0.122591, 0.0145672, 0.434435, 0.538291, 0.288562, 0.0159815, 0.238621, 0.377492, 0.396458, 0.270544, 0.023486, 0.28976, 0.351239, 0.205935, 0.0207048, 0.0471239, 0.0231952, 0.0725119, 0.258469, 0.364721, 0.269868, 0.113368, 0.0776539, 0.253272, 0.206649, 0.0259172, 0.0113922, 0.0292629, 0.0340571, 0.122908, 0.114526, 0.00732411, 0.143259, 0.235013, 0.0891858, 0.223231, 0.200547, 0.161008, 0.212217, 0.127761, 0.363938, 0.322735, 0.192288, 0.0762548, 0.0805428, 0.289166, 0.533103, 0.700129, 0.654469, 0.419232, 0.0269783, 0.281271, 0.0584709, 0.152716, 0.580515, 0.534613, 0.262162, 0.193528, 0.241158, 0.217433, 0.0181192, 0.138942, 0.13721, 0.139298, 0.147865, 0.185669, 0.410035, 0.611773, 0.43361, 0.0508554, 0.180216, 0.267735, 0.269327, 0.137874, 0.0474963, 0.167184, 0.172319, 0.0681337, 0.0820044, 0.151117, 0.123484, 0.109831, 0.134905, 0.214513, 0.0551924, 0.164724, 0.100628, 0.691259, 1.1426, 0.221389, 0.299718, 0.0600183, 0.170383, 0.214336, 0.0510155, 0.339882, 0.369223, 0.0659112, 0.214938, 0.268266, 0.240081, 0.270586, 0.280963, 0.213689, 0.0674178, 0.214826, 0.557017, 0.722897, 0.599442, 0.358064, 0.159883, 0.0152654, 0.169974, 0.253649, 0.239921, 0.14563, 0.0305089, 0.0155233, 0.0447138, 0.124243, 0.165441, 0.225279, 0.310623, 0.363702, 0.348757, 0.22368, 0.0239542, 0.0996009, 0.0633312, 0.016392, 0.202959, 0.535217, 0.774894, 0.948343, 0.871694, 0.277839, 0.351958, 0.482323, 0.330615, 0.180868, 0.151613, 0.349196, 0.511664, 0.407048, 0.211836, 0.00489827, 0.17717, 0.181094, 0.161773, 0.3096, 0.401712, 0.26655, 0.0850225, 0.0183526, 0.048581, 0.0887396, 0.0481069, 0.381621, 0.598512, 0.607225, 0.520867, 0.25037, 0.07313, 0.206926, 0.342513, 0.623897, 0.952437, 1.2212, 1.07628, 0.391215, 0.343989, 0.827237, 1.0485, 0.804058, 0.219813, 0.143126, 0.303632, 0.614253, 0.70511, 0.238517, 0.308944, 0.55892, 0.60111, 0.506059, 0.361111, 0.298619, 0.222114, 0.0326466, 0.331582, 0.387775, 0.227013, 0.172279, 0.157009, 0.182106, 0.47667, 0.123705, 0.472548, 0.67082, 0.618939, 0.5846, 0.447828, 0.166732, 0.0730075, 0.182655, 0.256548, 0.335474, 0.350212, 0.30523, 0.247975, 0.168798, 0.0865174, 0.0398048, 0.0389772, 0.223595, 0.400458, 0.391311, 0.212745, 0.0433923, 0.0486824, 0.125449, 0.181922, 0.206956, 0.175929, 0.0192369, 0.200105, 0.0229553, 0.318693, 0.358522, 0.093027, 0.148397, 0.201783, 0.1465, 0.161886, 0.250999, 0.198095, 0.0849105, 0.0556875, 0.00943721, 0.0864497, 0.178107, 0.234007, 0.160464, 0.000519164, 0.178262, 0.131466, 0.368962, 0.51892, 1.15933, 0.743333, 0.464022, 0.438123, 0.298877, 0.0790549, 0.203874, 0.359717, 0.432446, 0.513468, 0.474966, 0.443104, 0.544689, 0.56553, 0.435167, 0.2814, 0.0932773, 0.111812, 0.214948, 0.238144, 0.326812, 0.457623, 0.422033, 0.254738, 0.207244, 0.238943, 0.20506, 0.17354, 0.13857, 0.0273457, 0.120321, 0.245307, 0.308037, 0.384436, 0.556648, 0.648063, 0.489606, 0.164978, 0.168564, 0.351612, 0.364061, 0.416082, 0.539566, 0.534938, 0.384435, 0.196967, 0.0506042, 0.0333339, 0.0583661, 0.0899104, 0.265562, 0.236948, 0.141551, 0.259021, 0.190333, 0.271634, 0.266636, 0.181791, 0.101416, 0.00467386, 0.11965, 0.318407, 0.431582, 0.369292, 0.291579, 0.309558, 0.303141, 0.0387266, 0.400043, 0.568006, 0.354456, 0.204791, 0.107023, 0.184624, 0.253155, 0.144572, 0.239298, 0.242118, 0.0516552, 0.0112049, 0.0999662, 0.127497, 0.107022, 0.0789586, 0.0148995, 0.041998, 0.0305492, 0.00115566, 0.0138662, 0.0328301, 0.0560344, 0.0863318, 0.145936, 0.176691, 0.130606, 0.0738068, 0.0525243, 0.0300166, 0.0177414, 0.0684884, 0.084258, 0.03627, 0.0276496, 0.0133545, 0.041212, 0.0366312, 0.00615073, 0.00580387, 0.0321906, 0.0607576, 0.0661202, 0.0838387, 0.107519, 0.0816138, 0.037147, 0.0275492, 0.0227054, 0.0144848, 0.0100383, 0.0126589, 0.0039647, 0.0596359, 0.0289535, 0.0497395, 0.0449778, 0.0125232, 0.0283235, 0.0106697, 0.00413274, 0.0260771, 0.0137879, 0.0941761, 0.120142, 0.0613039, 0.0749046, 0.0890105, 0.00953469, 0.0478525, 0.00489532, 0.039559, 0.0586937, 0.0827954, 0.102752, 0.155855, 0.202628, 0.179237, 0.105138, 0.011578, 0.0316837, 0.0288828, 0.0553502, 0.0897233, 0.0753914, 0.0129589, 0.0172957, 0.0137386, 0.0104643, 0.0279443, 0.0335673, 0.0434692, 0.0735143, 0.0918155, 0.109851, 0.122829, 0.110378, 0.0800845, 0.048726, 0.019295, 0.0180685, 0.0631738, 0.0900547,
0.0430906, 0.0504755, 0.0659091, 0.0137829, 0.000550962, 0.0114901,
0.00403849, 0.00322605, 0.0170536, 0.0494896, 0.115596, 0.160538,
0.137666, 0.0840657, 0.0220006, 0.0234395, 0.0250124, 0.019679, 0.00487424, 0.0535135, 0.122445, 0.165667, 0.187699, 0.204877, 0.206183, 0.161743, 0.095674, 0.0534651, 0.0195711, 0.0258411, 0.0674406, 0.10505, 0.102727, 0.0421999, 0.0315754, 0.0765086, 0.0600061, 0.0119366, 0.017703,
0.0607152, 0.110476, 0.164839, 0.216248, 0.220989, 0.171546, 0.105704,
0.0537852, 0.00117297, 0.0510639, 0.0788509, 0.0917927, 0.063742,
0.00465787, 0.016741, 0.0263162, 0.0262756, 0.0224733, 0.0562229,
0.0564749, 0.0583787, 0.0923716, 0.155164, 0.187764, 0.133245,
0.0611095, 0.0449188};
//Data accessed through http://ieee-dataport.org/2917
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
MyServo.attach(servoPin);
}
int pos = 0;
int i = 0;
int d = 0;
void loop() {
// put your main code here, to run repeatedly:
d = abs(emg_data[i]);
pos = 52.783*d + 9.975; //Expression derived through linear extrapolation
MyServo.write(pos);
delay(10); // this speeds up the simulation
i = i+1;
}