Arduino Engineering Kit

View table of contents ...  

image

 

{tabbedtable} Tab LabelTab Content
About

The Arduino Engineering Kit is the ideal solution for university students, providing a state -of-the-art, hands-on incorporation of Arduino technology in an educational setting.

 

The kit is primarily for three types of users:

  • Students learning about engineering at a university or at a vocational school (e.g., Introductory Engineering,
  • Controls, Mechatronics courses);
  • Professors teaching engineering who also want practical resources to demonstrate engineering concepts;
  • Makers with an interest or background in engineering, either professionally or as a hobby.

image

image

The Arduino Engineering Kit includes three cutting-edge Arduino-based projects so that students can learn fundamental engineering concepts, key aspects of mechatronics, and MATLAB and Simulink programming.

 

The kit is sold in a hard plastic, stackable tool box for storage and years of reuse. Inside the box is an easy -to-use Arduino MKR1000 board, several customized parts, and a complete set of electrical and mechanical components needed to assemble all three projects. See below for detailed list of what’s included in the kit.

 

In addition to the state-of-the-art, high-quality, open-source hardware provided, after registering online, the student will have access to a dedicated e-learning platform and other learning materials. Additionally, they are granted a one-year individual license for MATLAB and Simulink. This provides them with hands-on experience in system modeling and embedded algorithm development.

Important Dates

Enrollment Begin: Oct 12 1018

Enrollment Ends: Nov 16 2018

RoadTesters Selected: Nov 27 2018

Product Shipped: Nov 28 2018

RoadTesting Begins: Dec 4 2108

Reminder/Update Email: Jan 4 2019*

Submit Reviews By:Feb 4 2019*

*The element14 RoadTest Staff will send this reminder/update email.

**If a RoadTester is unable to meet the deadline, please notify the RoadTest Program Lead, , as soon as possible before the deadline.

RoadTesters

Terms and Conditions

Arduino Engineering Kit

RoadTest

Terms and Conditions

These are the terms and conditions which govern the Arduino Engineering Kit RoadTest contest. This Contest requires participants to submit an application indicating their previous experience with this type of equipment/component, information on what they would do to test the equipment/component, and the applicant’s desire to post a thorough review of their experience with images, photos, or other supplemental materials. Participants will be required to meet the Conditions for Participation.  The winners of this RoadTest will receive the item(s) listed below. RoadTest Reviews are due no later than 60 days after the receipt of the item(s). No other prizes are offered.

The Principal terms of the Competition:

The following words and phrases are used in these terms and conditions and have the meanings given to them below.

Arduino Engineering Kit

(RoadTest or Contest)

Key dates:

Applications Close: midnight (GMT) on Nov 16 2018

Announcement of Winner (estimated): Nov 23 2018

Prize:Arduino Engineering Kit

Additional Prizes: none

Competition Site: https://www.element14.com/community/groups/roadtest?ICID=menubar_resources_roadtest

Site or element14 Community: www.element14.com/community

Judges: members of the element14 community team chosen at the Organiser’s discretion.

Judging Criteria, All of the following which will have equal weighting:

· Demonstrated competence with the technologies including links or descriptions of past projects

· Qualifications as indicated by current job role and/or schooling/vocational training;

· A thorough description of how the prize would be tested;

· Likelihood that the Applicant will blog about the prize and provide a review on element14.com;

· Originality;

· Innovation.

Organiser: Premier Farnell plc (registered in England and Wales under company number 876412) whose registered office is at Farnell House, Forge Lane, Leeds, UK

Conditions for Qualification: in addition to meeting the requirements of these terms, all persons applying to take part in the Contest (each one an Applicant) must:

· Provide a RoadTest application describing what he/she would do if awarded the Prize including similar previous projects, product experience and qualifications

Terms: these terms and conditions which govern the Competition and to which the Organiser reserves the right to make changes from time to time and the latest version of these Terms from time to time will be posted to the Site.

  1. Eligibility
  2. Applications:
  3. Selecting Winners:
  4. Liability:
  5. General:

1.1 Save as set out in these Terms, the Contest is open to any natural or legal person, firm or company or group of natural persons or unincorporated body.

1.2 All Applicants must be aged at least 18 at the time of their application.

1.3 Applicants must not enter the RoadTest if doing so or taking part may:

1.3.1 cause the Organiser and/or themselves to be in breach of any agreement (including but not limited to any contract of employment) to which they are a party or in breach of any law, regulation or rule having the force of law to which the Organiser or the Applicant may be subject or any policy of the Organiser or the Sponsor;

1.3.2 Require the Organiser to obtain any licence, authorisation or permission to deal with the Applicant; or

1.3.3 Be in breach of any policy or practice of their employer. Some employers prohibit or restrict their employees from taking part in competitions such as these or receiving prizes under them and the Organiser respects those policies and practices.

The Organiser reserves the right to disqualify any Application made in breach of these Terms and to reject any Application which it reasonably believes may be or become in breach. The Organiser reserves the right to require evidence in such form as the Organiser may reasonably require of any Applicant’s compliance with any of these Terms and to disqualify any Applicant or Participant who cannot provide such evidence reasonably promptly.

1.4 Multiple applications are not permitted.

1.5 Applications may not be submitted by an agent whether acting on behalf of an undisclosed principal or otherwise.

1.6 The Contest is NOT open to:

1.6.1 Any person or entity who is a resident or national of any country which is subject to sanctions, embargoes or national trade restrictions of the United States of America, the European Union or the United Kingdom;

1.6.2 Any employee, director, member, shareholder (as appropriate) or any of their direct families (parents, siblings, spouse, partner, children) (“Direct Families”) of the Organiser and Sponsors; or

2.1 Each Applicant must fully complete and submit a RoadTest Application by the Application Close.

2.2 By submitting a Registration Form, each Applicant:

2.2.1 Authorises the Organiser to use his or her personal data (as defined in the Data Protection Act 1998) for the purposes of running and promoting the RoadTest;

2.2.2 Authorises the Organizer to copy, reproduce and publish their application should they be accepted as a Participant;

2.2.3 Will be deemed to have read, accepted and agree to be bound by these Terms. Applicants are advised to print and keep safe these Terms;

2.2.4 Authorises the Organiser to copy, reproduce and use the Application and/or Review for the purposes of the RoadTest and as otherwise contemplated by these Terms. The Organiser will not be responsible for any inaccuracy, error or omission contained in any reproduction or use of the Project Blogs.

2.2.5 Licenses the Organiser to use the intellectual property in the Project (IP) for the purposes of this Contest. As between the Applicant and the Organiser the IP remains owned by the Applicant.

2.2.6 Grants the Organiser the right to use his or her likeness, photographs, logos, trademarks, audio or video recordings without restriction for the purposes of Contest or the promotion of it or the Site;

2.2.7 Agrees to participate positively in all publicity surrounding the Contest;

2.2.8 Agrees to be responsible for all expenses and costs incurred by him or her in preparing for, entering and participating in the Contest (save for any expenses expressly agreed by the Organiser to be borne by it in these Terms);

2.2.9 Confirms that he or she owns all IP used in his or her application or Project or Blogs and indemnifies the Organiser from any claim by a third party that use of any material provided by an Applicant to the Organiser infringes the intellectual property rights of any third party;

2.2.10 Agrees not to act in any way or fail to act in any way or be associated with any cause or group which would have a negative impact on the reputation of the Organiser and/or the RoadTest.

2.3 All applications submitted to this RoadTest must meet the following criteria:

2.3.1 Applicants must be the author, creator and owner of the proposed review idea. Applicants must not submit someone else’s idea;

2.3.2 The proposed application must be reasonably achievable by the within the time constraints of the Contest;

2.3.3 Applications must not include or propose any of the following, the inclusion of which shall render any proposed application ineligible:

(a) Applications which relate to socially taboo topics, such as illicit drug use or sexual gratification;

(b) Applications that are or could reasonably be considered to be illegal, immoral, discriminatory or offensive as determined by the Organiser;

(c) Applications in relation to them which if accepted would infringe or breach any of the policies or terms of access or use of the Site.

2.4 No Application may contain any of the hazardous substances identified by Article 4 of Directive 2002/95/EC of the European Parliament on the Restrictions on the Use of Substances in Electronic and Electrical Equipment ("the Directive") or the use of such hazardous substances in the in any such Project must not exceed the maximum concentration values set out in the Directive.

3.1 Winners will be selected by the Organiser on the basis of the quality of his or her application and its adherence to these Terms.

3.2 The total number of Winners selected will be at least the minimum number set out above but the actual number is at the sole discretion of the Organizer and/or the Sponsor, if applicable.

3.3 The Organiser will use all reasonable efforts to announce the Winners via an update to the RoadTest page by the date listed above.

3.4 Winners agree to take part in all publicity which the Organiser or the Sponsor wishes to use to promote the RoadTest, the Products featured or other Contests with which the Organiser may be connected from time to time.

3.5 Details of the Winners may also be published in the media.

3.6 Winners are responsible for all applicable taxes, duties or other charges payable in relation to any prize.

3.7

4.1 The Organiser hereby excludes all and any Liability arising out of the Contest or the acceptance, use, quality, condition, suitability or performance of any Prize, even where that Liability may arise from the Organiser’s negligence.

4.2 Nothing in these Terms will affect any Liability of the Organiser for death or personal injury arising from its negligence, for breach of Part II of the Consumer Protection Act 1987 (in the event that any entrant is entitled to claim rights under the Consumer Protection Act 1987) or for any matter in relation to which it would be illegal for the Organiser to exclude or to attempt to exclude its Liability.

4.3 Subject to 4.2, neither the Organiser, any parent company nor any subsidiary of the Organiser or such parent company or any of their directors, officers and employees (together referred to in these terms and the ‘Associates’) makes any guarantee, warranty or representation of any kind, express or implied, with respect to this Competition or the Prizes potentially available under it. Neither the Organiser nor any of its Associates shall be responsible for any Liability that may arise out of or in connection with person’s participation in this Competition, the claiming, redemption or value of any prizes under it, the use or enjoyment of such prizes or any events or circumstances arising out of or in connection with any of them. Any implied warranties of condition, merchantability or suitability or fitness for purpose of any of them are hereby expressly excluded. Wherever used in these Terms, ‘Liability’ shall mean any and all costs, expenses, claims, damages, actions, proceedings, demands, losses and other liabilities (including legal fees and costs on a full indemnity basis) arising directly or indirectly out of or in connection with the matter concerned.

5.1 The RoadTest is organised and sponsored by the Organiser. The Organiser reserves the right to delegate all or any of its powers, rights and obligations arising in relation to the RoadTest to any Associate and certain such rights and powers are assumed by the Organiser on behalf of itself and each Associate. Reference to “Organiser” shall be deemed to include reference to each Associate.

5.2 The RoadTest may be terminated at any time if there are, in the sole opinion of the Organiser, an insufficient number of entries, or if the Applications are not of an appropriate standard for a competition of this nature. The Organiser has the right to cancel or suspend the RoadTest at any time due to circumstances outside its reasonable control.

5.3 The Organiser shall have the sole discretion to disqualify (without correspondence or right of appeal) any Applicant it considers to be adversely affecting the process or the operation of the RoadTest or to be in breach of these Terms or to be acting in a disruptive manner or with intent to annoy, abuse, threaten or harass any other Applicant or Participant.

5.4 The Organiser has the right to amend or add to these Terms from time to time. Revised Terms and Conditions will be posted on the Contest Site and it is a condition of entry to the RoadTest that Applicants agree to comply with these Terms and, if appropriate, such Terms as amended from time to time.

5.5 Headings are for convenience only and do not affect the interpretation or construction of these Terms and Conditions.

5.6 These Terms and the operation of the Contest shall be governed by and construed in accordance with English Law and any claim or matter arising under these Terms shall be subject to the exclusive jurisdiction of the English courts.

RoadTest Reviews
Comment List
Anonymous
  • Madhu - sorry to drive you crazy with this observation, I've updated the contents in case someone else has this weird thing happen.

     

    This time

    2.3.1.3 SIMULATING A MODEL  errored while following the  example.  imageimage

    I tried modifying the curve block as the help suggested without resolve.

    I checked the VAR table data of PWMcmdMono and speedMono and the points somehow are inconsistant and are 4 X 1 array, which was strange

    imageimage

     

    I quit for the evening and saved my work to the Simulink model as  MyDCMotorControl., and powered down the PC.

     

    *** Next evening,****  PC powered up,****** and a fresh MATLAB start.

    I reopened MyDCMotorControl model, forgetting to call up the VARs in the Workspece.

    so then  I called up

    load motorResponse

    min(speedMono)

    max(speedMono)

     

    The PWMcmdMono and speedMono are now 38x1 arrays , and the 1-D block is satisfied without error.

    imageimage

     

    I dont know why PWMcmdMono and speedMono arrays are different than yesterday,

    Anyone having this problem should close open tasks, clear out VARs, and restart app.

     

    Please  notice the values in speedMono are 100 times too big, therefor the gain block is not 255 for me, it is 25500 to match the Simulink Tutorial scope waveforms.

    image

     

    Thanks Gary

  • Thanks Madhu - Neither suggestion works into the example in TASK5 for the drawing robot.

     

    1) Using the first suggestion into the function xyToCounts: 

    function counts = xyToCounts( [ x y ],  Z_i, Base)

    %UNTITLED2 Summary of this function goes here

    %   Detailed explanation goes here

    % Z_i = initialPosition;

    r_spool = 0.0045;

    countsPerRevolution = 1200;

    countsPerRadian = countsPerRevolution/(2*pi);

    load RobotGeometry.mat Base

    Z(1) = sqrt(x^2 + y^2);

    Z(2) = sqrt((Base-x)^2 + y^2);

    dZ = Z - Z_i;

    dStringLength = 2*dZ;

    phi = dStringLength/r_spool;

    counts = phi*countsPerRadian

    end

     

    provides this error:

    >> load RobotGeometry.mat Base

    segmentsCounts = cell(size(segmentsMeters));

    for ii = 1:nSegments

        segmentsCounts{ii} = xyToCounts(segmentsMeters{ii},Z_i,Base);

    end

    Error: File: xyToCounts.m Line: 1 Column: 31

    Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for mismatched

    delimiters.

     

    2) Using the second suggestion into the function xyToCounts: 

    function counts = xyToCounts( xy ,  Z_i, Base)

    %UNTITLED2 Summary of this function goes here

    %   Detailed explanation goes here

    % Z_i = initialPosition;

    r_spool = 0.0045;

    countsPerRevolution = 1200;

    countsPerRadian = countsPerRevolution/(2*pi);

    load RobotGeometry.mat Base

    Z(1) = sqrt(x^2 + y^2);

    Z(2) = sqrt((Base-x)^2 + y^2);

    dZ = Z - Z_i;

    dStringLength = 2*dZ;

    phi = dStringLength/r_spool;

    counts = phi*countsPerRadian

    end

     

     

    >> x = xy(:,1); y = xy(:,2);

    >> load RobotGeometry.mat Base

    segmentsCounts = cell(size(segmentsMeters));

    for ii = 1:nSegments

        segmentsCounts{ii} = xyToCounts(segmentsMeters{ii},Z_i,Base);

    end

    Undefined function or variable 'x'.

     

    Error in xyToCounts (line 11)

    Z(1) = sqrt(x^2 + y^2);

     

    error is the same regardless if  x = xy(:,1); y = xy(:,2);   is inside function or outside the function

     

    Any other suggestions ? Thanks Gary 

    PS My middle son got his  BS in Math a couple years ago, used MatLab alot, and didnt have any good suggestions for me   on this one :-)

  • This is not a typo. In earlier sections we have the motors connected to pin M3 and encoder wires to 1. In the drawing robot project we are using M1 and M2 for a reason. These are the only pins that you can do PID Control on the firmware.

     

    HTH,

    Madhu

  • Hi Gary,

     

    The online platform shows the function input to be xy which is a variable and has more lines of code. [x:y] indicates you are going from x to y in increments of 1. This is probably the cause for the error. please change your function to either  function counts = xyToCounts([x y],Z_i,Base) or function counts = xyToCounts(xy, Z_i, Base).

     

    If you use the second approach however remember that you need to add the following two lines of code as per the online platform instructions.

     

    x = xy(:,1); y = xy(:,2);

  • Hi Madhu - Could you please provide the correct code solution for creating the DRAWING ROBOT  function; Convert position to counts  in TUTORIAL 4 TASK3  line 14 ?

    Convert position to counts using a function counts = xyToCounts([x y],Z_i,Base).

     

    I have tried many different ways to fix my errors, got stuck, and missing some understanding of the needed syntax.

    Other functions have been followed as examples to follow, and reread the sections several times to find needed fix, no longer making progress.

    Getting this function working, will help me alot to finishing up the drawing robot tutorials, and my personal goal to use the drawing robot to draw my robot club's logo (which just coincidentally happens to use the colors black and red )

     

    Thanks for the help on the code for function counts = xyToCounts([x y],Z_i,Base).

    Gary

    image

  • Thanks Madhu - No need to confirm my last question with developers, I confirmed myself tonight.  The Matlab Arduino Server stays loaded in MKR1000 until I overwrite it with something else.

    Tonight I was able to continue through the MATLAB tutorial section 2.2 without reloading the MATLAB server to MKR1000.

     

     

    In MATLAB tutorial section 2.2, there is some example code shown:

    >> clear a>> a = arduino>> carrier = addon(a, 'Arduino/MKRMotorCarrier')>> dcm = dcmotor(carrier,3)>> enc = rotaryEncoder(carrier,1)

    is there is a typo here  ?  shouldnt  dcm=dcmotor(carrier , #)  and  enc=rotaryEncode(carrier,#) both have the same value in # ? or is it the encoders feedback VARs are assigned by their HW assignment ENC1 and 2, and it is just how the software uses them ?

     

    I have wired the DC motor to M1 ( the drawing robot is assembled and used for testing right now) and ENC1 for feedback. The examples so far seem to work OK like that.

    I assume that is because I write the example software according to my wiring ?

    Conceivably, 4 DC motors could be driven open loop, and the encoder inputs could be independently used as feedback for other project uses ? 

     

    Thanks

    Gary

  • I am glad everything is working. But I am not sure what your question means - Please confirm , once the MATLAB server is loaded for MKR1000, it is in persistent memory, I do not need to reload the server everytime the MKR1000 is power cycled.

     

    I have forwarded that to our developers as is but in the meantime could you explain more on what this is?

     

    Regards,

    Madhu

  • December 16 - Hi Madhu, another quick update,

    Arduino IDE works fine. I had some NeoPixels arrive, and tested them with an arduino nano using a default library, worked first time.

     

    I spent tons of hours in the last 3 days again still on Simulink and MATLAB Arduino Server Setup troubleshooting.

     

    Simulink Arduino Hardware Setup Wizard now works repeatedly for me if

    1) MATLAB is opened as Admin

    2) Antivirus and firewalls are setup to allow control to the Arduino_Create_Bridge.exe

    3) Windows 10 Task Manager is monitored for DISK use at a continuous minimal use below 10%. I have to let the PC boot up and all scheduled background updates finish before I start.

     

    MATLAB Arduino Hardware Setup Wizard loaded for me once:

    1) MATLAB is opened as Admin

    2) Antivirus and firewalls are setup to allow control to the Arduino_Create_Bridge.exe

    3) Windows 10 Task Manager is monitored for DISK Use at a continuous minimal use below 10%.

    4) Hidden directories and files under...............................AppData\Local\Temp\ArduinoServer are brute force deleted.

     

    Please confirm , once the MATLAB server is loaded for MKR1000, it is in persistent memory, I do not need to reload the server everytime the MKR1000 is power cycled.

     

    Since the MATLAB server interface is loaded and working to my MKR1000, ( I am working my way thru the online tutorial section 2.2 )  I can continue on using all things needing MATLAB and drawing bot  before loading Simulink and doing tutorial 2.3 and the 2 Simulink based projects.

     

    Thanks for all your help

    Any other comments or insights ?

    Gary

  • Dec 13 Madhu, and today the MATLAB and Simulink returned to the same errors as before. I thought I did a thorough job documenting each configuration change, and spent hours today rechecking them, and didnt see anything reset, but there must be something.

    I'm documenting issues and timetable for posterity. :-)  still open to any brainstorms.

    Thank you Gary

  • The other suggestion is to safelist arduino_debug.exe and other related executables from Arduino. Sorry that information might not be very helpful.

     

    Is there a way to give permissions to all exes from one app?