diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..21229f7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.asv \ No newline at end of file diff --git a/Data/SandingImagesCalibration.mat b/Data/SandingImagesCalibration.mat new file mode 100644 index 0000000..7829eaa Binary files /dev/null and b/Data/SandingImagesCalibration.mat differ diff --git a/Procedure_Draft.m b/Procedure_Draft.m new file mode 100644 index 0000000..6decbf6 --- /dev/null +++ b/Procedure_Draft.m @@ -0,0 +1,64 @@ + +%% Process Triggered By Remote Robot Controller + +% Trigger: Start Inspection Procedure Message Received +% Action: Send Acknowledged message to robot controller + +% Create a container to store all the captured images in +inspection_images = containers.Map('KeyType', 'single', 'ValueType', 'any'); + +while 1 + + % Block until triggered + % Trigger; Incoming Message + rcv_msg = 'tbd'; + + switch rcv_msg + case 'tbd' %[Robot Ready Bit] Call to defn. in + + % Here we need to get the pose. Should we have the robot + % communicate this to use, or just use a pre-defined set of + % poses? + pose = null; + + % Module: Camera Capture + % Input: None + % Output: Captured Image, 3xNxM uint8 + + % Action: Capture Image + img = Null; % [img] = modcam.captureImage() + + % Store the image in the container + inspection_images(pose) = img; + + + + case 'tbf' %[Inspection Complete Bit] Call to defn. in + break; + otherwise + % Throw and log error + end + + +end + +% Action: Evaluate the Images, Determine which subsections +% are bad +% This module should be connected to the calibration. + +% Module Action: Evaluation +% Input: A set of inspection images, list of poses that images +% were taken from +% Output: A list of sections, and good/bad part determination +section_status = zeros(1,8); + + + +% Action: Send section status register +% Module Action: Send Status +% Input: Column vector of status values: 0=Good, 1=Faulty +% Output: None + +% Complete + +